ODE
\[ x y(x)^3 y'(x)=\left (1-x^2\right ) \left (y(x)^2+1\right ) \] ODE Classification
[_separable]
Book solution method
Separable ODE, Neither variable missing
Mathematica ✓
cpu = 0.0237565 (sec), leaf count = 61
\[\left \{\left \{y(x)\to -\sqrt {-W\left (-\frac {e^{-2 c_1+x^2-1}}{x^2}\right )-1}\right \},\left \{y(x)\to \sqrt {-W\left (-\frac {e^{-2 c_1+x^2-1}}{x^2}\right )-1}\right \}\right \}\]
Maple ✓
cpu = 0.01 (sec), leaf count = 29
\[ \left \{ {\frac {{x}^{2}}{2}}-\ln \left ( x \right ) +{\frac { \left ( y \left ( x \right ) \right ) ^{2}}{2}}-{\frac {\ln \left ( 1+ \left ( y \left ( x \right ) \right ) ^{2} \right ) }{2}}+{\it \_C1}=0 \right \} \] Mathematica raw input
DSolve[x*y[x]^3*y'[x] == (1 - x^2)*(1 + y[x]^2),y[x],x]
Mathematica raw output
{{y[x] -> -Sqrt[-1 - ProductLog[-(E^(-1 + x^2 - 2*C[1])/x^2)]]}, {y[x] -> Sqrt[-
1 - ProductLog[-(E^(-1 + x^2 - 2*C[1])/x^2)]]}}
Maple raw input
dsolve(x*y(x)^3*diff(y(x),x) = (-x^2+1)*(1+y(x)^2), y(x),'implicit')
Maple raw output
1/2*x^2-ln(x)+1/2*y(x)^2-1/2*ln(1+y(x)^2)+_C1 = 0