##### 4.24.18 $$f\left (y'(x)\right )+x g\left (y'(x)\right )=y(x)$$

ODE
$f\left (y'(x)\right )+x g\left (y'(x)\right )=y(x)$ ODE Classiﬁcation

[_dAlembert]

Book solution method
Clairaut’s equation and related types, d’Alembert’s equation (also call Lagrange’s)

Mathematica
cpu = 0.312348 (sec), leaf count = 98

$\text {Solve}\left [\left \{x=\exp \left (\int _1^{K[1]}\frac {g'(K[2])}{K[2]-g(K[2])}dK[2]\right ) \left (\int \frac {f'(K[1]) \exp \left (-\int _1^{K[1]}\frac {g'(K[2])}{K[2]-g(K[2])}dK[2]\right )}{K[1]-g(K[1])} \, dK[1]+c_1\right ),f(K[1])+x g(K[1])=y(x)\right \},\{y(x),K[1]\}\right ]$

Maple
cpu = 0.862 (sec), leaf count = 138

$\left [y \left (x \right ) = x \RootOf \left (\textit {\_Z} -g \left (\textit {\_Z} \right )\right )+f \left (\RootOf \left (\textit {\_Z} -g \left (\textit {\_Z} \right )\right )\right ), \left [x \left (\textit {\_T} \right ) = {\mathrm e}^{\int \frac {\frac {d}{d \textit {\_T}}g \left (\textit {\_T} \right )}{\textit {\_T} -g \left (\textit {\_T} \right )}d \textit {\_T}} \left (\int \frac {\left (\frac {d}{d \textit {\_T}}f \left (\textit {\_T} \right )\right ) {\mathrm e}^{-\left (\int \frac {\frac {d}{d \textit {\_T}}g \left (\textit {\_T} \right )}{\textit {\_T} -g \left (\textit {\_T} \right )}d \textit {\_T} \right )}}{\textit {\_T} -g \left (\textit {\_T} \right )}d \textit {\_T} +\textit {\_C1} \right ), y \left (\textit {\_T} \right ) = f \left (\textit {\_T} \right )+{\mathrm e}^{\int \frac {\frac {d}{d \textit {\_T}}g \left (\textit {\_T} \right )}{\textit {\_T} -g \left (\textit {\_T} \right )}d \textit {\_T}} \left (\int \frac {\left (\frac {d}{d \textit {\_T}}f \left (\textit {\_T} \right )\right ) {\mathrm e}^{-\left (\int \frac {\frac {d}{d \textit {\_T}}g \left (\textit {\_T} \right )}{\textit {\_T} -g \left (\textit {\_T} \right )}d \textit {\_T} \right )}}{\textit {\_T} -g \left (\textit {\_T} \right )}d \textit {\_T} +\textit {\_C1} \right ) g \left (\textit {\_T} \right )\right ]\right ]$ Mathematica raw input

DSolve[f[y'[x]] + x*g[y'[x]] == y[x],y[x],x]

Mathematica raw output

Solve[{x == E^Inactive[Integrate][Derivative[1][g][K[2]]/(-g[K[2]] + K[2]), {K[2
], 1, K[1]}]*(C[1] + Integrate[Derivative[1][f][K[1]]/(E^Inactive[Integrate][Der
ivative[1][g][K[2]]/(-g[K[2]] + K[2]), {K[2], 1, K[1]}]*(-g[K[1]] + K[1])), K[1]
]), f[K[1]] + x*g[K[1]] == y[x]}, {y[x], K[1]}]

Maple raw input

dsolve(f(diff(y(x),x))+x*g(diff(y(x),x)) = y(x), y(x))

Maple raw output

[y(x) = x*RootOf(_Z-g(_Z))+f(RootOf(_Z-g(_Z))), [x(_T) = exp(Int(1/(_T-g(_T))*di
ff(g(_T),_T),_T))*(Int(1/(_T-g(_T))*diff(f(_T),_T)*exp(-Int(1/(_T-g(_T))*diff(g(
_T),_T),_T)),_T)+_C1), y(_T) = f(_T)+exp(Int(1/(_T-g(_T))*diff(g(_T),_T),_T))*(I
nt(1/(_T-g(_T))*diff(f(_T),_T)*exp(-Int(1/(_T-g(_T))*diff(g(_T),_T),_T)),_T)+_C1
)*g(_T)]]