ODE
\[ x^2 (a+y(x))^2 y'(x)=\left (x^2+1\right ) \left (a^2+y(x)^2\right ) \] ODE Classification
[_separable]
Book solution method
Separable ODE, Neither variable missing
Mathematica ✓
cpu = 0.0654535 (sec), leaf count = 30
\[\left \{\left \{y(x)\to \text {InverseFunction}\left [a \log \left (\text {$\#$1}^2+a^2\right )+\text {$\#$1}\& \right ]\left [c_1+x-\frac {1}{x}\right ]\right \}\right \}\]
Maple ✓
cpu = 0.018 (sec), leaf count = 27
\[ \left \{ x-{x}^{-1}-y \left ( x \right ) -a\ln \left ( \left ( y \left ( x \right ) \right ) ^{2}+{a}^{2} \right ) +{\it \_C1}=0 \right \} \] Mathematica raw input
DSolve[x^2*(a + y[x])^2*y'[x] == (1 + x^2)*(a^2 + y[x]^2),y[x],x]
Mathematica raw output
{{y[x] -> InverseFunction[a*Log[a^2 + #1^2] + #1 & ][-x^(-1) + x + C[1]]}}
Maple raw input
dsolve(x^2*(a+y(x))^2*diff(y(x),x) = (x^2+1)*(y(x)^2+a^2), y(x),'implicit')
Maple raw output
x-1/x-y(x)-a*ln(y(x)^2+a^2)+_C1 = 0