[[_1st_order, _with_linear_symmetries], _rational, _Clairaut]
Book solution method
Clairaut’s equation and related types,
Mathematica ✓
cpu = 0.702642 (sec), leaf count = 212
Maple ✓
cpu = 0.027 (sec), leaf count = 37
DSolve[b + (a - y[x])*y'[x] + x*y'[x]^2 == 0,y[x],x]
Mathematica raw output
{{y[x] -> -((-(a*b) + b^2 + b*x + a*Cosh[2*C[1]] - b*Cosh[2*C[1]] + a*Sinh[2*C[1
]] - b*Sinh[2*C[1]] + Sqrt[b*((-1 + b - x)*Cosh[C[1]] + (-1 - b + x)*Sinh[C[1]])
^2*(Cosh[4*C[1]] + Sinh[4*C[1]])])/(b - Cosh[2*C[1]] - Sinh[2*C[1]]))}, {y[x] ->
(a*b - b^2 - b*x - a*Cosh[2*C[1]] + b*Cosh[2*C[1]] - a*Sinh[2*C[1]] + b*Sinh[2*
C[1]] + Sqrt[b*((-1 + b - x)*Cosh[C[1]] + (-1 - b + x)*Sinh[C[1]])^2*(Cosh[4*C[1
]] + Sinh[4*C[1]])])/(b - Cosh[2*C[1]] - Sinh[2*C[1]])}}
Maple raw input
dsolve(x*diff(y(x),x)^2+(a-y(x))*diff(y(x),x)+b = 0, y(x),'implicit')
Maple raw output
y(x)^2-2*a*y(x)+a^2-4*b*x = 0, y(x) = (_C1^2*x+_C1*a+b)/_C1