4.14.17 \(\left (1-x^2 y(x)^2\right ) y'(x)=y(x)^2 (x y(x)+1)\)

ODE
\[ \left (1-x^2 y(x)^2\right ) y'(x)=y(x)^2 (x y(x)+1) \] ODE Classification

[[_homogeneous, `class G`], _rational, [_Abel, `2nd type`, `class B`]]

Book solution method
Exact equation, integrating factor

Mathematica
cpu = 0.330053 (sec), leaf count = 29

\[\left \{\left \{y(x)\to -\frac {1}{x}\right \},\left \{y(x)\to -\frac {W\left (-e^{-c_1} x\right )}{x}\right \}\right \}\]

Maple
cpu = 0.078 (sec), leaf count = 27

\[\left [y \left (x \right ) = -\frac {1}{x}, y \left (x \right ) = {\mathrm e}^{-\LambertW \left (-x \,{\mathrm e}^{-\textit {\_C1}}\right )-\textit {\_C1}}\right ]\] Mathematica raw input

DSolve[(1 - x^2*y[x]^2)*y'[x] == y[x]^2*(1 + x*y[x]),y[x],x]

Mathematica raw output

{{y[x] -> -x^(-1)}, {y[x] -> -(ProductLog[-(x/E^C[1])]/x)}}

Maple raw input

dsolve((1-x^2*y(x)^2)*diff(y(x),x) = (1+x*y(x))*y(x)^2, y(x))

Maple raw output

[y(x) = -1/x, y(x) = exp(-LambertW(-x/exp(_C1))-_C1)]