# Why DSolve gives the error “Arguments should be ordered consistently” on this PDE?

This problem is strange. Mathematica is able to solve this PDE with no error

ClearAll[x,y,u];
pde=u[x,y]*(x+y)*D[u[x,y],x]+u[x,y]*(x-y)*D[u[x,y],y]==x^2+y^2;
ic=u[x,2*x]==0;
DSolve[{pde,ic},u[x,y],{x,y}]


Similar one, no error

ClearAll[x, y, u];
pde = x*D[u[x, y], x] + y*D[u[x, y], y] == x*Exp[-u[x, y]];
ic = u[x, x^2] == 0;
DSolve[{pde, ic}, u[x, y], {x, y}]


But this similar one, it gives error

ClearAll[x, y, u];
pde = (y - u[x, y])*D[u[x, y], x] + (u[x, y] - x)*D[u[x, y], y] == x - y;
ic = u[x, 1/x] == 0;
DSolve[{pde, ic}, u[x, y], {x, y}]


This error

DSolve::conarg: The arguments should be ordered consistently.


What is the difference here? Why it works sometimes? What is wrong with the order is the third example?

Mathematica 12 on windows 10.

• You're trying to solve a non-linear equation using DSolve. This equation may not have a well known solution. – Alex Trounev Jun 3 at 8:21
• @AlexTrounev This is an example from textbook, and the solution is given there and the steps to obtain it. The solution is $u(x,y)=\frac{1- x y}{x+y}$ – Nasser Jun 3 at 8:31
• @Nasser It looks as a bug for me. – Alexei Boulbitch Jun 3 at 8:53
• @Nasser You're right, there is an exact solution. But this does not mean that it is in the Mathematica database. See community.wolfram.com/groups/-/m/t/1610701 – Alex Trounev Jun 4 at 18:24