I was going through a machine learning course and they talked about combining various features to create synthetic feature to take care of non linear data. For eg in the below picture I didn't do any feature crossing and the model didn't fit:
The model fits now. But why? What exactly does feature crossing do that enables a model to fit non linear data?
Can some one please help me understand it?