[[_1st_order, `_with_symmetry_[F(x),G(x)*y+H(x)]`]]
Book solution method
Binomial equation
Mathematica ✓
cpu = 2.85498 (sec), leaf count = 413
Maple ✓
cpu = 0.242 (sec), leaf count = 190
DSolve[f[x]*(-a1 + y[x])*(-a2 + y[x])*(-a3 + y[x])*(-a4 + y[x]) + y'[x]^2 == 0,y[x],x]
Mathematica raw output
{{y[x] -> InverseFunction[(2*EllipticF[ArcSin[Sqrt[((a1 - a4)*(-a2 + #1))/((a2 -
a4)*(-a1 + #1))]], ((a1 - a3)*(a2 - a4))/((a2 - a3)*(a1 - a4))]*Sqrt[a2 - #1]*S
qrt[a4 - #1]*Sqrt[((a1 - a2)*(-a3 + #1))/((-a2 + a3)*(-a1 + #1))])/((a2 - a4)*Sq
rt[a1 - #1]*Sqrt[a3 - #1]*Sqrt[((a1 - a2)*(a1 - a4)*(a2 - #1)*(-a4 + #1))/((a2 -
a4)^2*(a1 - #1)^2)]) & ][C[1] + Integrate[(-I)*Sqrt[f[K[1]]], {K[1], 1, x}]]},
{y[x] -> InverseFunction[(2*EllipticF[ArcSin[Sqrt[((a1 - a4)*(-a2 + #1))/((a2 -
a4)*(-a1 + #1))]], ((a1 - a3)*(a2 - a4))/((a2 - a3)*(a1 - a4))]*Sqrt[a2 - #1]*Sq
rt[a4 - #1]*Sqrt[((a1 - a2)*(-a3 + #1))/((-a2 + a3)*(-a1 + #1))])/((a2 - a4)*Sqr
t[a1 - #1]*Sqrt[a3 - #1]*Sqrt[((a1 - a2)*(a1 - a4)*(a2 - #1)*(-a4 + #1))/((a2 -
a4)^2*(a1 - #1)^2)]) & ][C[1] + Integrate[I*Sqrt[f[K[2]]], {K[2], 1, x}]]}}
Maple raw input
dsolve(diff(y(x),x)^2+f(x)*(y(x)-a1)*(y(x)-a2)*(y(x)-a3)*(y(x)-a4) = 0, y(x),'implicit')
Maple raw output
Intat(1/((-_a+a4)*(-_a+a3)*(-_a+a2)*(-_a+a1))^(1/2),_a = y(x))+Intat(-(-f(_a)*(a
4-y(x))*(a3-y(x))*(a2-y(x))*(a1-y(x)))^(1/2)/((a4-y(x))*(a3-y(x))*(a2-y(x))*(a1-
y(x)))^(1/2),_a = x)+_C1 = 0, Intat(1/((-_a+a4)*(-_a+a3)*(-_a+a2)*(-_a+a1))^(1/2
),_a = y(x))+Intat((-f(_a)*(a4-y(x))*(a3-y(x))*(a2-y(x))*(a1-y(x)))^(1/2)/((a4-y
(x))*(a3-y(x))*(a2-y(x))*(a1-y(x)))^(1/2),_a = x)+_C1 = 0