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)]