ODE
\[ x (3-x y(x)) y'(x)=y(x) (x y(x)-1) \] ODE Classification
[[_homogeneous, `class G`], _rational, [_Abel, `2nd type`, `class B`]]
Book solution method
Exact equation, integrating factor
Mathematica ✓
cpu = 7.32856 (sec), leaf count = 30
\[\left \{\left \{y(x)\to -\frac {3 W\left (e^{-1+\frac {9 c_1}{2^{2/3}}} x^{2/3}\right )}{x}\right \}\right \}\]
Maple ✓
cpu = 0.226 (sec), leaf count = 74
\[\left [y \left (x \right ) = -\frac {3 \LambertW \left (\frac {2 \left (-\frac {x^{2}}{8}\right )^{\frac {1}{3}} \textit {\_C1}}{3}\right )}{x}, y \left (x \right ) = -\frac {3 \LambertW \left (\frac {\left (-\frac {x^{2}}{8}\right )^{\frac {1}{3}} \textit {\_C1} \left (-1+i \sqrt {3}\right )}{3}\right )}{x}, y \left (x \right ) = -\frac {3 \LambertW \left (-\frac {\left (-\frac {x^{2}}{8}\right )^{\frac {1}{3}} \textit {\_C1} \left (1+i \sqrt {3}\right )}{3}\right )}{x}\right ]\] Mathematica raw input
DSolve[x*(3 - x*y[x])*y'[x] == y[x]*(-1 + x*y[x]),y[x],x]
Mathematica raw output
{{y[x] -> (-3*ProductLog[E^(-1 + (9*C[1])/2^(2/3))*x^(2/3)])/x}}
Maple raw input
dsolve(x*(3-x*y(x))*diff(y(x),x) = y(x)*(x*y(x)-1), y(x))
Maple raw output
[y(x) = -3*LambertW(2/3*(-1/8*x^2)^(1/3)*_C1)/x, y(x) = -3*LambertW(1/3*(-1/8*x^
2)^(1/3)*_C1*(-1+I*3^(1/2)))/x, y(x) = -3*LambertW(-1/3*(-1/8*x^2)^(1/3)*_C1*(1+
I*3^(1/2)))/x]