diff --git a/test_rubi_algebraic.py b/test_rubi_algebraic.py new file mode 100644 index 0000000..384284a --- /dev/null +++ b/test_rubi_algebraic.py @@ -0,0 +1,1798 @@ +from sympy.abc import a, b, c, d, n, m +# Maple integration test file: "1 Algebraic functions\1 Linear products\1.2 (a + b x)**m (c + d x)**n.txt" + +#lst:=[ + +# Integrands of the form (c x)**m (a + b x)**n + +# Integrands of the form (c x)**m + +# Integrands of the form a +assert rubi_integrate(0, x) == 0 +assert rubi_integrate(1, x) == x +assert rubi_integrate(5, x) == 5*x +assert rubi_integrate(-2, x) == -2*x +assert rubi_integrate(-3/2, x) == -3/2*x +assert rubi_integrate(Pi, x) == Pi*x +assert rubi_integrate(a, x) == a*x +assert rubi_integrate(3*a, x) == 3*a*x +assert rubi_integrate(Pi/sqrt(16-exp(2)), x) == Pi*x/sqrt(16-exp(2)) + +# Integrands of the form x**m +assert rubi_integrate(x**m, x) == x**(1 + m)/(1 + m) +assert rubi_integrate(x**100, x) == 1/101*x**101 +assert rubi_integrate(x**3, x) == 1/4*x**4 +assert rubi_integrate(x**2, x) == 1/3*x**3 +assert rubi_integrate(x, x) == 1/2*x**2 +assert rubi_integrate(1, x) == x +assert rubi_integrate(1/x, x) == log(x) +assert rubi_integrate(1/x**2, x) == (-1)/x +assert rubi_integrate(1/x**3, x) == (-1/2)/x**2 +assert rubi_integrate(1/x**4, x) == (-1/3)/x**3 +assert rubi_integrate(1/x**100, x) == (-1/99)/x**99 + +# Integrands of the form x**(m/2 +assert rubi_integrate(x**(5/2), x) == 2/7*x**(7/2) +assert rubi_integrate(x**(3/2), x) == 2/5*x**(5/2) +assert rubi_integrate(x**(1/2), x) == 2/3*x**(3/2) +assert rubi_integrate(1/x**(1/2), x) == 2*sqrt(x) +assert rubi_integrate(1/x**(3/2), x) == (-2)/sqrt(x) +assert rubi_integrate(1/x**(5/2), x) == (-2/3)/x**(3/2) + +# Integrands of the form x**(m/3 +assert rubi_integrate(x**(5/3), x) == 3/8*x**(8/3) +assert rubi_integrate(x**(4/3), x) == 3/7*x**(7/3) +assert rubi_integrate(x**(2/3), x) == 3/5*x**(5/3) +assert rubi_integrate(x**(1/3), x) == 3/4*x**(4/3) +assert rubi_integrate(1/x**(1/3), x) == 3/2*x**(2/3) +assert rubi_integrate(1/x**(2/3), x) == 3*x**(1/3) +assert rubi_integrate(1/x**(4/3), x) == (-3)/x**(1/3) +assert rubi_integrate(1/x**(5/3), x) == (-3/2)/x**(2/3) + +# Integrands of the form (c x)**m (a + b x)**n + +# Integrands of the form x**m (a + b x)**n + +# n>0 +assert rubi_integrate(x**3*(a + b*x), x) == 1/4*a*x**4 + 1/5*b*x**5 +assert rubi_integrate(x**2*(a + b*x), x) == 1/3*a*x**3 + 1/4*b*x**4 +assert rubi_integrate(x*(a + b*x), x) == 1/2*a*x**2 + 1/3*b*x**3 +assert rubi_integrate(a + b*x, x) == a*x + 1/2*b*x**2 +assert rubi_integrate((a + b*x)/x, x) == b*x + a*log(x) +assert rubi_integrate((a + b*x)/x**2, x) == -a/x + b*log(x) +assert rubi_integrate((a + b*x)/x**3, x) == -1/2*a/x**2-b/x +assert rubi_integrate((a + b*x)/x**4, x) == -1/3*a/x**3-1/2*b/x**2 +assert rubi_integrate((a + b*x)/x**5, x) == -1/4*a/x**4-1/3*b/x**3 +assert rubi_integrate(x**3*(a + b*x)**2, x) == 1/4*a**2*x**4 + 2/5*a*b*x**5 + 1/6*b**2*x**6 +assert rubi_integrate(x**2*(a + b*x)**2, x) == 1/3*a**2*x**3 + 1/2*a*b*x**4 + 1/5*b**2*x**5 +assert rubi_integrate(x*(a + b*x)**2, x) == 1/2*a**2*x**2 + 2/3*a*b*x**3 + 1/4*b**2*x**4 +assert rubi_integrate((a + b*x)**2, x) == 1/3*(a + b*x)**3/b +assert rubi_integrate((a + b*x)**2/x, x) == 2*a*b*x + 1/2*b**2*x**2 + a**2*log(x) +assert rubi_integrate((a + b*x)**2/x**2, x) == -a**2/x + b**2*x + 2*a*b*log(x) +assert rubi_integrate((a + b*x)**2/x**3, x) == -1/2*a**2/x**2-2*a*b/x + b**2*log(x) +assert rubi_integrate((a + b*x)**2/x**4, x) == -1/3*(a + b*x)**3/(a*x**3) +assert rubi_integrate((a + b*x)**2/x**5, x) == -1/4*a**2/x**4-2/3*a*b/x**3-1/2*b**2/x**2 +assert rubi_integrate((a + b*x)**2/x**6, x) == -1/5*a**2/x**5-1/2*a*b/x**4-1/3*b**2/x**3 +assert rubi_integrate((a + b*x)**2/x**7, x) == -1/6*a**2/x**6-2/5*a*b/x**5-1/4*b**2/x**4 +assert rubi_integrate((a + b*x)**2/x**8, x) == -1/7*a**2/x**7-1/3*a*b/x**6-1/5*b**2/x**5 +assert rubi_integrate(x**3*(a + b*x)**3, x) == 1/4*a**3*x**4 + 3/5*a**2*b*x**5 + 1/2*a*b**2*x**6 + 1/7*b**3*x**7 +assert rubi_integrate(x**2*(a + b*x)**3, x) == 1/3*a**3*x**3 + 3/4*a**2*b*x**4 + 3/5*a*b**2*x**5 + 1/6*b**3*x**6 +assert rubi_integrate(x*(a + b*x)**3, x) == -1/4*a*(a + b*x)**4/b**2 + 1/5*(a + b*x)**5/b**2 +assert rubi_integrate((a + b*x)**3, x) == 1/4*(a + b*x)**4/b +assert rubi_integrate((a + b*x)**3/x, x) == 3*a**2*b*x + 3/2*a*b**2*x**2 + 1/3*b**3*x**3 + a**3*log(x) +assert rubi_integrate((a + b*x)**3/x**2, x) == -a**3/x + 3*a*b**2*x + 1/2*b**3*x**2 + 3*a**2*b*log(x) +assert rubi_integrate((a + b*x)**3/x**3, x) == -1/2*a**3/x**2-3*a**2*b/x + b**3*x + 3*a*b**2*log(x) +assert rubi_integrate((a + b*x)**3/x**4, x) == -1/3*a**3/x**3-3/2*a**2*b/x**2-3*a*b**2/x + b**3*log(x) +assert rubi_integrate((a + b*x)**3/x**5, x) == -1/4*(a + b*x)**4/(a*x**4) +assert rubi_integrate((a + b*x)**3/x**6, x) == -1/5*a**3/x**5-3/4*a**2*b/x**4-a*b**2/x**3-1/2*b**3/x**2 +assert rubi_integrate((a + b*x)**3/x**7, x) == -1/6*a**3/x**6-3/5*a**2*b/x**5-3/4*a*b**2/x**4-1/3*b**3/x**3 +assert rubi_integrate((a + b*x)**3/x**8, x) == -1/7*a**3/x**7-1/2*a**2*b/x**6-3/5*a*b**2/x**5-1/4*b**3/x**4 +assert rubi_integrate(x**7*(a + b*x)**7, x) == 1/8*a**7*x**8 + 7/9*a**6*b*x**9 + 21/10*a**5*b**2*x**10 + 35/11*a**4*b**3*x**11 + 35/12*a**3*b**4*x**12 + 21/13*a**2*b**5*x**13 + 1/2*a*b**6*x**14 + 1/15*b**7*x**15 +assert rubi_integrate(x**6*(a + b*x)**7, x) == 1/7*a**7*x**7 + 7/8*a**6*b*x**8 + 7/3*a**5*b**2*x**9 + 7/2*a**4*b**3*x**10 + 35/11*a**3*b**4*x**11 + 7/4*a**2*b**5*x**12 + 7/13*a*b**6*x**13 + 1/14*b**7*x**14 +assert rubi_integrate(x**5*(a + b*x)**7, x) == 1/6*a**7*x**6 + a**6*b*x**7 + 21/8*a**5*b**2*x**8 + 35/9*a**4*b**3*x**9 + 7/2*a**3*b**4*x**10 + 21/11*a**2*b**5*x**11 + 7/12*a*b**6*x**12 + 1/13*b**7*x**13 +assert rubi_integrate(x**4*(a + b*x)**7, x) == 1/8*a**4*(a + b*x)**8/b**5-4/9*a**3*(a + b*x)**9/b**5 + 3/5*a**2*(a + b*x)**10/b**5-4/11*a*(a + b*x)**11/b**5 + 1/12*(a + b*x)**12/b**5 +assert rubi_integrate(x**3*(a + b*x)**7, x) == -1/8*a**3*(a + b*x)**8/b**4 + 1/3*a**2*(a + b*x)**9/b**4-3/10*a*(a + b*x)**10/b**4 + 1/11*(a + b*x)**11/b**4 +assert rubi_integrate(x**2*(a + b*x)**7, x) == 1/8*a**2*(a + b*x)**8/b**3-2/9*a*(a + b*x)**9/b**3 + 1/10*(a + b*x)**10/b**3 +assert rubi_integrate(x*(a + b*x)**7, x) == -1/8*a*(a + b*x)**8/b**2 + 1/9*(a + b*x)**9/b**2 +assert rubi_integrate((a + b*x)**7, x) == 1/8*(a + b*x)**8/b +assert rubi_integrate((a + b*x)**7/x, x) == 7*a**6*b*x + 21/2*a**5*b**2*x**2 + 35/3*a**4*b**3*x**3 + 35/4*a**3*b**4*x**4 + 21/5*a**2*b**5*x**5 + 7/6*a*b**6*x**6 + 1/7*b**7*x**7 + a**7*log(x) +assert rubi_integrate((a + b*x)**7/x**2, x) == -a**7/x + 21*a**5*b**2*x + 35/2*a**4*b**3*x**2 + 35/3*a**3*b**4*x**3 + 21/4*a**2*b**5*x**4 + 7/5*a*b**6*x**5 + 1/6*b**7*x**6 + 7*a**6*b*log(x) +assert rubi_integrate((a + b*x)**7/x**3, x) == -1/2*a**7/x**2-7*a**6*b/x + 35*a**4*b**3*x + 35/2*a**3*b**4*x**2 + 7*a**2*b**5*x**3 + 7/4*a*b**6*x**4 + 1/5*b**7*x**5 + 21*a**5*b**2*log(x) +assert rubi_integrate((a + b*x)**7/x**4, x) == -1/3*a**7/x**3-7/2*a**6*b/x**2-21*a**5*b**2/x + 35*a**3*b**4*x + 21/2*a**2*b**5*x**2 + 7/3*a*b**6*x**3 + 1/4*b**7*x**4 + 35*a**4*b**3*log(x) +assert rubi_integrate((a + b*x)**7/x**5, x) == -1/4*a**7/x**4-7/3*a**6*b/x**3-21/2*a**5*b**2/x**2-35*a**4*b**3/x + 21*a**2*b**5*x + 7/2*a*b**6*x**2 + 1/3*b**7*x**3 + 35*a**3*b**4*log(x) +assert rubi_integrate((a + b*x)**7/x**6, x) == -1/5*a**7/x**5-7/4*a**6*b/x**4-7*a**5*b**2/x**3-35/2*a**4*b**3/x**2-35*a**3*b**4/x + 7*a*b**6*x + 1/2*b**7*x**2 + 21*a**2*b**5*log(x) +assert rubi_integrate((a + b*x)**7/x**7, x) == -1/6*a**7/x**6-7/5*a**6*b/x**5-21/4*a**5*b**2/x**4-35/3*a**4*b**3/x**3-35/2*a**3*b**4/x**2-21*a**2*b**5/x + b**7*x + 7*a*b**6*log(x) +assert rubi_integrate((a + b*x)**7/x**8, x) == -1/7*a**7/x**7-7/6*a**6*b/x**6-21/5*a**5*b**2/x**5-35/4*a**4*b**3/x**4-35/3*a**3*b**4/x**3-21/2*a**2*b**5/x**2-7*a*b**6/x + b**7*log(x) +assert rubi_integrate((a + b*x)**7/x**9, x) == -1/8*(a + b*x)**8/(a*x**8) +assert rubi_integrate((a + b*x)**7/x**10, x) == -1/9*(a + b*x)**8/(a*x**9) + 1/72*b*(a + b*x)**8/(a**2*x**8) +assert rubi_integrate((a + b*x)**7/x**11, x) == -1/10*(a + b*x)**8/(a*x**10) + 1/45*b*(a + b*x)**8/(a**2*x**9)-1/360*b**2*(a + b*x)**8/(a**3*x**8) +assert rubi_integrate((a + b*x)**7/x**12, x) == -1/11*(a + b*x)**8/(a*x**11) + 3/110*b*(a + b*x)**8/(a**2*x**10)-1/165*b**2*(a + b*x)**8/(a**3*x**9) + 1/1320*b**3*(a + b*x)**8/(a**4*x**8) +assert rubi_integrate((a + b*x)**7/x**13, x) == -1/12*a**7/x**12-7/11*a**6*b/x**11-21/10*a**5*b**2/x**10-35/9*a**4*b**3/x**9-35/8*a**3*b**4/x**8-3*a**2*b**5/x**7-7/6*a*b**6/x**6-1/5*b**7/x**5 +assert rubi_integrate((a + b*x)**7/x**14, x) == -1/13*a**7/x**13-7/12*a**6*b/x**12-21/11*a**5*b**2/x**11-7/2*a**4*b**3/x**10-35/9*a**3*b**4/x**9-21/8*a**2*b**5/x**8-a*b**6/x**7-1/6*b**7/x**6 +assert rubi_integrate((a + b*x)**7/x**15, x) == -1/14*a**7/x**14-7/13*a**6*b/x**13-7/4*a**5*b**2/x**12-35/11*a**4*b**3/x**11-7/2*a**3*b**4/x**10-7/3*a**2*b**5/x**9-7/8*a*b**6/x**8-1/7*b**7/x**7 +assert rubi_integrate((a + b*x)**7/x**16, x) == -1/15*a**7/x**15-1/2*a**6*b/x**14-21/13*a**5*b**2/x**13-35/12*a**4*b**3/x**12-35/11*a**3*b**4/x**11-21/10*a**2*b**5/x**10-7/9*a*b**6/x**9-1/8*b**7/x**8 +assert rubi_integrate(x**9*(a + b*x)**10, x) == 1/10*a**10*x**10 + 10/11*a**9*b*x**11 + 15/4*a**8*b**2*x**12 + 120/13*a**7*b**3*x**13 + 15*a**6*b**4*x**14 + 84/5*a**5*b**5*x**15 + 105/8*a**4*b**6*x**16 + 120/17*a**3*b**7*x**17 + 5/2*a**2*b**8*x**18 + 10/19*a*b**9*x**19 + 1/20*b**10*x**20 +assert rubi_integrate(x**8*(a + b*x)**10, x) == 1/9*a**10*x**9 + a**9*b*x**10 + 45/11*a**8*b**2*x**11 + 10*a**7*b**3*x**12 + 210/13*a**6*b**4*x**13 + 18*a**5*b**5*x**14 + 14*a**4*b**6*x**15 + 15/2*a**3*b**7*x**16 + 45/17*a**2*b**8*x**17 + 5/9*a*b**9*x**18 + 1/19*b**10*x**19 +assert rubi_integrate(x**7*(a + b*x)**10, x) == 1/8*a**10*x**8 + 10/9*a**9*b*x**9 + 9/2*a**8*b**2*x**10 + 120/11*a**7*b**3*x**11 + 35/2*a**6*b**4*x**12 + 252/13*a**5*b**5*x**13 + 15*a**4*b**6*x**14 + 8*a**3*b**7*x**15 + 45/16*a**2*b**8*x**16 + 10/17*a*b**9*x**17 + 1/18*b**10*x**18 +assert rubi_integrate(x**6*(a + b*x)**10, x) == 1/11*a**6*(a + b*x)**11/b**7-1/2*a**5*(a + b*x)**12/b**7 + 15/13*a**4*(a + b*x)**13/b**7-10/7*a**3*(a + b*x)**14/b**7 + a**2*(a + b*x)**15/b**7-3/8*a*(a + b*x)**16/b**7 + 1/17*(a + b*x)**17/b**7 +assert rubi_integrate(x**5*(a + b*x)**10, x) == -1/11*a**5*(a + b*x)**11/b**6 + 5/12*a**4*(a + b*x)**12/b**6-10/13*a**3*(a + b*x)**13/b**6 + 5/7*a**2*(a + b*x)**14/b**6-1/3*a*(a + b*x)**15/b**6 + 1/16*(a + b*x)**16/b**6 +assert rubi_integrate(x**4*(a + b*x)**10, x) == 1/11*a**4*(a + b*x)**11/b**5-1/3*a**3*(a + b*x)**12/b**5 + 6/13*a**2*(a + b*x)**13/b**5-2/7*a*(a + b*x)**14/b**5 + 1/15*(a + b*x)**15/b**5 +assert rubi_integrate(x**3*(a + b*x)**10, x) == -1/11*a**3*(a + b*x)**11/b**4 + 1/4*a**2*(a + b*x)**12/b**4-3/13*a*(a + b*x)**13/b**4 + 1/14*(a + b*x)**14/b**4 +assert rubi_integrate(x**2*(a + b*x)**10, x) == 1/11*a**2*(a + b*x)**11/b**3-1/6*a*(a + b*x)**12/b**3 + 1/13*(a + b*x)**13/b**3 +assert rubi_integrate(x*(a + b*x)**10, x) == -1/11*a*(a + b*x)**11/b**2 + 1/12*(a + b*x)**12/b**2 +assert rubi_integrate((a + b*x)**10, x) == 1/11*(a + b*x)**11/b +assert rubi_integrate((a + b*x)**10/x, x) == 10*a**9*b*x + 45/2*a**8*b**2*x**2 + 40*a**7*b**3*x**3 + 105/2*a**6*b**4*x**4 + 252/5*a**5*b**5*x**5 + 35*a**4*b**6*x**6 + 120/7*a**3*b**7*x**7 + 45/8*a**2*b**8*x**8 + 10/9*a*b**9*x**9 + 1/10*b**10*x**10 + a**10*log(x) +assert rubi_integrate((a + b*x)**10/x**2, x) == -a**10/x + 45*a**8*b**2*x + 60*a**7*b**3*x**2 + 70*a**6*b**4*x**3 + 63*a**5*b**5*x**4 + 42*a**4*b**6*x**5 + 20*a**3*b**7*x**6 + 45/7*a**2*b**8*x**7 + 5/4*a*b**9*x**8 + 1/9*b**10*x**9 + 10*a**9*b*log(x) +assert rubi_integrate((a + b*x)**10/x**3, x) == -1/2*a**10/x**2-10*a**9*b/x + 120*a**7*b**3*x + 105*a**6*b**4*x**2 + 84*a**5*b**5*x**3 + 105/2*a**4*b**6*x**4 + 24*a**3*b**7*x**5 + 15/2*a**2*b**8*x**6 + 10/7*a*b**9*x**7 + 1/8*b**10*x**8 + 45*a**8*b**2*log(x) +assert rubi_integrate((a + b*x)**10/x**4, x) == -1/3*a**10/x**3-5*a**9*b/x**2-45*a**8*b**2/x + 210*a**6*b**4*x + 126*a**5*b**5*x**2 + 70*a**4*b**6*x**3 + 30*a**3*b**7*x**4 + 9*a**2*b**8*x**5 + 5/3*a*b**9*x**6 + 1/7*b**10*x**7 + 120*a**7*b**3*log(x) +assert rubi_integrate((a + b*x)**10/x**5, x) == -1/4*a**10/x**4-10/3*a**9*b/x**3-45/2*a**8*b**2/x**2-120*a**7*b**3/x + 252*a**5*b**5*x + 105*a**4*b**6*x**2 + 40*a**3*b**7*x**3 + 45/4*a**2*b**8*x**4 + 2*a*b**9*x**5 + 1/6*b**10*x**6 + 210*a**6*b**4*log(x) +assert rubi_integrate((a + b*x)**10/x**6, x) == -1/5*a**10/x**5-5/2*a**9*b/x**4-15*a**8*b**2/x**3-60*a**7*b**3/x**2-210*a**6*b**4/x + 210*a**4*b**6*x + 60*a**3*b**7*x**2 + 15*a**2*b**8*x**3 + 5/2*a*b**9*x**4 + 1/5*b**10*x**5 + 252*a**5*b**5*log(x) +assert rubi_integrate((a + b*x)**10/x**7, x) == -1/6*a**10/x**6-2*a**9*b/x**5-45/4*a**8*b**2/x**4-40*a**7*b**3/x**3-105*a**6*b**4/x**2-252*a**5*b**5/x + 120*a**3*b**7*x + 45/2*a**2*b**8*x**2 + 10/3*a*b**9*x**3 + 1/4*b**10*x**4 + 210*a**4*b**6*log(x) +assert rubi_integrate((a + b*x)**10/x**8, x) == -1/7*a**10/x**7-5/3*a**9*b/x**6-9*a**8*b**2/x**5-30*a**7*b**3/x**4-70*a**6*b**4/x**3-126*a**5*b**5/x**2-210*a**4*b**6/x + 45*a**2*b**8*x + 5*a*b**9*x**2 + 1/3*b**10*x**3 + 120*a**3*b**7*log(x) +assert rubi_integrate((a + b*x)**10/x**9, x) == -1/8*a**10/x**8-10/7*a**9*b/x**7-15/2*a**8*b**2/x**6-24*a**7*b**3/x**5-105/2*a**6*b**4/x**4-84*a**5*b**5/x**3-105*a**4*b**6/x**2-120*a**3*b**7/x + 10*a*b**9*x + 1/2*b**10*x**2 + 45*a**2*b**8*log(x) +assert rubi_integrate((a + b*x)**10/x**10, x) == -1/9*a**10/x**9-5/4*a**9*b/x**8-45/7*a**8*b**2/x**7-20*a**7*b**3/x**6-42*a**6*b**4/x**5-63*a**5*b**5/x**4-70*a**4*b**6/x**3-60*a**3*b**7/x**2-45*a**2*b**8/x + b**10*x + 10*a*b**9*log(x) +assert rubi_integrate((a + b*x)**10/x**11, x) == -1/10*a**10/x**10-10/9*a**9*b/x**9-45/8*a**8*b**2/x**8-120/7*a**7*b**3/x**7-35*a**6*b**4/x**6-252/5*a**5*b**5/x**5-105/2*a**4*b**6/x**4-40*a**3*b**7/x**3-45/2*a**2*b**8/x**2-10*a*b**9/x + b**10*log(x) +assert rubi_integrate((a + b*x)**10/x**12, x) == -1/11*(a + b*x)**11/(a*x**11) +assert rubi_integrate((a + b*x)**10/x**13, x) == -1/12*(a + b*x)**11/(a*x**12) + 1/132*b*(a + b*x)**11/(a**2*x**11) +assert rubi_integrate((a + b*x)**10/x**14, x) == -1/13*(a + b*x)**11/(a*x**13) + 1/78*b*(a + b*x)**11/(a**2*x**12)-1/858*b**2*(a + b*x)**11/(a**3*x**11) +assert rubi_integrate((a + b*x)**10/x**15, x) == -1/14*(a + b*x)**11/(a*x**14) + 3/182*b*(a + b*x)**11/(a**2*x**13)-1/364*b**2*(a + b*x)**11/(a**3*x**12) + 1/4004*b**3*(a + b*x)**11/(a**4*x**11) +assert rubi_integrate((a + b*x)**10/x**16, x) == -1/15*(a + b*x)**11/(a*x**15) + 2/105*b*(a + b*x)**11/(a**2*x**14)-2/455*b**2*(a + b*x)**11/(a**3*x**13) + 1/1365*b**3*(a + b*x)**11/(a**4*x**12)-1/15015*b**4*(a + b*x)**11/(a**5*x**11) +assert rubi_integrate((a + b*x)**10/x**17, x) == -1/16*(a + b*x)**11/(a*x**16) + 1/48*b*(a + b*x)**11/(a**2*x**15)-1/168*b**2*(a + b*x)**11/(a**3*x**14) + 1/728*b**3*(a + b*x)**11/(a**4*x**13)-1/4368*b**4*(a + b*x)**11/(a**5*x**12) + 1/48048*b**5*(a + b*x)**11/(a**6*x**11) +assert rubi_integrate((a + b*x)**10/x**18, x) == -1/17*a**10/x**17-5/8*a**9*b/x**16-3*a**8*b**2/x**15-60/7*a**7*b**3/x**14-210/13*a**6*b**4/x**13-21*a**5*b**5/x**12-210/11*a**4*b**6/x**11-12*a**3*b**7/x**10-5*a**2*b**8/x**9-5/4*a*b**9/x**8-1/7*b**10/x**7 +assert rubi_integrate((a + b*x)**10/x**19, x) == -1/18*a**10/x**18-10/17*a**9*b/x**17-45/16*a**8*b**2/x**16-8*a**7*b**3/x**15-15*a**6*b**4/x**14-252/13*a**5*b**5/x**13-35/2*a**4*b**6/x**12-120/11*a**3*b**7/x**11-9/2*a**2*b**8/x**10-10/9*a*b**9/x**9-1/8*b**10/x**8 +assert rubi_integrate((a + b*x)**10/x**20, x) == -1/19*a**10/x**19-5/9*a**9*b/x**18-45/17*a**8*b**2/x**17-15/2*a**7*b**3/x**16-14*a**6*b**4/x**15-18*a**5*b**5/x**14-210/13*a**4*b**6/x**13-10*a**3*b**7/x**12-45/11*a**2*b**8/x**11-a*b**9/x**10-1/9*b**10/x**9 +# +# {(a + b*x)**20/x**32, x, 11, -((a + b*x)**21/(31*a*x**31)) + (b*(a + b*x)**21)/(93*a**2*x**30) - (3*b**2*(a + b*x)**21)/(899*a**3*x**29) + (6*b**3*(a + b*x)**21)/(6293*a**4*x**28) - (2*b**4*(a + b*x)**21)/(8091*a**5*x**27) + (2*b**5*(a + b*x)**21)/(35061*a**6*x**26) - (2*b**6*(a + b*x)**21)/(175305*a**7*x**25) + (b**7*(a + b*x)**21)/(525915*a**8*x**24) - (b**8*(a + b*x)**21)/(4032015*a**9*x**23) + (b**9*(a + b*x)**21)/(44352165*a**10*x**22) - (b**10*(a + b*x)**21)/(931395465*a**11*x**21)} +# {(a + b*x)**20/x**33, x, 12, -((a + b*x)**21/(32*a*x**32)) + (11*b*(a + b*x)**21)/(992*a**2*x**31) - (11*b**2*(a + b*x)**21)/(2976*a**3*x**30) + (33*b**3*(a + b*x)**21)/(28768*a**4*x**29) - (33*b**4*(a + b*x)**21)/(100688*a**5*x**28) + (11*b**5*(a + b*x)**21)/(129456*a**6*x**27) - (11*b**6*(a + b*x)**21)/(560976*a**7*x**26) + (11*b**7*(a + b*x)**21)/(2804880*a**8*x**25) - (11*b**8*(a + b*x)**21)/(16829280*a**9*x**24) + (11*b**9*(a + b*x)**21)/(129024480*a**10*x**23) - (b**10*(a + b*x)**21)/(129024480*a**11*x**22) + (b**11*(a + b*x)**21)/(2709514080*a**12*x**21)} +# {(a + b*x)**20/x**34, x, 13, -((a + b*x)**21/(33*a*x**33)) + (b*(a + b*x)**21)/(88*a**2*x**32) - (b**2*(a + b*x)**21)/(248*a**3*x**31) + (b**3*(a + b*x)**21)/(744*a**4*x**30) - (3*b**4*(a + b*x)**21)/(7192*a**5*x**29) + (3*b**5*(a + b*x)**21)/(25172*a**6*x**28) - (b**6*(a + b*x)**21)/(32364*a**7*x**27) + (b**7*(a + b*x)**21)/(140244*a**8*x**26) - (b**8*(a + b*x)**21)/(701220*a**9*x**25) + (b**9*(a + b*x)**21)/(4207320*a**10*x**24) - (b**10*(a + b*x)**21)/(32256120*a**11*x**23) + (b**11*(a + b*x)**21)/(354817320*a**12*x**22) - (b**12*(a + b*x)**21)/(7451163720*a**13*x**21)} +# {(a + b*x)**20/x**35, x, 2, -(a**20/(34*x**34)) - (20*a**19*b)/(33*x**33) - (95*a**18*b**2)/(16*x**32) - (1140*a**17*b**3)/(31*x**31) - (323*a**16*b**4)/(2*x**30) - (15504*a**15*b**5)/(29*x**29) - (9690*a**14*b**6)/(7*x**28) - (25840*a**13*b**7)/(9*x**27) - (4845*a**12*b**8)/x**26 - (33592*a**11*b**9)/(5*x**25) - (46189*a**10*b**10)/(6*x**24) - (167960*a**9*b**11)/(23*x**23) - (62985*a**8*b**12)/(11*x**22) - (25840*a**7*b**13)/(7*x**21) - (1938*a**6*b**14)/x**20 - (816*a**5*b**15)/x**19 - (1615*a**4*b**16)/(6*x**18) - (1140*a**3*b**17)/(17*x**17) - (95*a**2*b**18)/(8*x**16) - (4*a*b**19)/(3*x**15) - b**20/(14*x**14)} +# {(a + b*x)**20/x**36, x, 2, -(a**20/(35*x**35)) - (10*a**19*b)/(17*x**34) - (190*a**18*b**2)/(33*x**33) - (285*a**17*b**3)/(8*x**32) - (4845*a**16*b**4)/(31*x**31) - (2584*a**15*b**5)/(5*x**30) - (38760*a**14*b**6)/(29*x**29) - (19380*a**13*b**7)/(7*x**28) - (41990*a**12*b**8)/(9*x**27) - (6460*a**11*b**9)/x**26 - (184756*a**10*b**10)/(25*x**25) - (20995*a**9*b**11)/(3*x**24) - (125970*a**8*b**12)/(23*x**23) - (38760*a**7*b**13)/(11*x**22) - (12920*a**6*b**14)/(7*x**21) - (3876*a**5*b**15)/(5*x**20) - (255*a**4*b**16)/x**19 - (190*a**3*b**17)/(3*x**18) - (190*a**2*b**18)/(17*x**17) - (5*a*b**19)/(4*x**16) - b**20/(15*x**15)} +# {(a + b*x)**20/x**37, x, 2, -(a**20/(36*x**36)) - (4*a**19*b)/(7*x**35) - (95*a**18*b**2)/(17*x**34) - (380*a**17*b**3)/(11*x**33) - (4845*a**16*b**4)/(32*x**32) - (15504*a**15*b**5)/(31*x**31) - (1292*a**14*b**6)/x**30 - (77520*a**13*b**7)/(29*x**29) - (62985*a**12*b**8)/(14*x**28) - (167960*a**11*b**9)/(27*x**27) - (7106*a**10*b**10)/x**26 - (33592*a**9*b**11)/(5*x**25) - (20995*a**8*b**12)/(4*x**24) - (77520*a**7*b**13)/(23*x**23) - (19380*a**6*b**14)/(11*x**22) - (5168*a**5*b**15)/(7*x**21) - (969*a**4*b**16)/(4*x**20) - (60*a**3*b**17)/x**19 - (95*a**2*b**18)/(9*x**18) - (20*a*b**19)/(17*x**17) - b**20/(16*x**16)} +assert rubi_integrate(c*(a + b*x), x) == 1/2*c*(a + b*x)**2/b +assert rubi_integrate((c + d)*(a + b*x)/e, x) == 1/2*(c + d)*(a + b*x)**2/(b*e) + +# n<0 +assert rubi_integrate(x**5/(a + b*x), x) == a**4*x/b**5-1/2*a**3*x**2/b**4 + 1/3*a**2*x**3/b**3-1/4*a*x**4/b**2 + 1/5*x**5/b-a**5*log(a + b*x)/b**6 +assert rubi_integrate(x**4/(a + b*x), x) == -a**3*x/b**4 + 1/2*a**2*x**2/b**3-1/3*a*x**3/b**2 + 1/4*x**4/b + a**4*log(a + b*x)/b**5 +assert rubi_integrate(x**3/(a + b*x), x) == a**2*x/b**3-1/2*a*x**2/b**2 + 1/3*x**3/b-a**3*log(a + b*x)/b**4 +assert rubi_integrate(x**2/(a + b*x), x) == -a*x/b**2 + 1/2*x**2/b + a**2*log(a + b*x)/b**3 +assert rubi_integrate(x/(a + b*x), x) == x/b-a*log(a + b*x)/b**2 +assert rubi_integrate(1/(a + b*x), x) == log(a + b*x)/b +assert rubi_integrate(1/(x*(a + b*x)), x) == log(x)/a-log(a + b*x)/a +assert rubi_integrate(1/(x**2*(a + b*x)), x) == (-1)/(a*x)-b*log(x)/a**2 + b*log(a + b*x)/a**2 +assert rubi_integrate(1/(x**3*(a + b*x)), x) == (-1/2)/(a*x**2) + b/(a**2*x) + b**2*log(x)/a**3-b**2*log(a + b*x)/a**3 +assert rubi_integrate(1/(x**4*(a + b*x)), x) == (-1/3)/(a*x**3) + 1/2*b/(a**2*x**2)-b**2/(a**3*x)-b**3*log(x)/a**4 + b**3*log(a + b*x)/a**4 +assert rubi_integrate(1/(x**5*(a + b*x)), x) == (-1/4)/(a*x**4) + 1/3*b/(a**2*x**3)-1/2*b**2/(a**3*x**2) + b**3/(a**4*x) + b**4*log(x)/a**5-b**4*log(a + b*x)/a**5 +assert rubi_integrate(x**6/(a + b*x)**2, x) == 5*a**4*x/b**6-2*a**3*x**2/b**5 + a**2*x**3/b**4-1/2*a*x**4/b**3 + 1/5*x**5/b**2-a**6/(b**7*(a + b*x))-6*a**5*log(a + b*x)/b**7 +assert rubi_integrate(x**5/(a + b*x)**2, x) == -4*a**3*x/b**5 + 3/2*a**2*x**2/b**4-2/3*a*x**3/b**3 + 1/4*x**4/b**2 + a**5/(b**6*(a + b*x)) + 5*a**4*log(a + b*x)/b**6 +assert rubi_integrate(x**4/(a + b*x)**2, x) == 3*a**2*x/b**4-a*x**2/b**3 + 1/3*x**3/b**2-a**4/(b**5*(a + b*x))-4*a**3*log(a + b*x)/b**5 +assert rubi_integrate(x**3/(a + b*x)**2, x) == -2*a*x/b**3 + 1/2*x**2/b**2 + a**3/(b**4*(a + b*x)) + 3*a**2*log(a + b*x)/b**4 +assert rubi_integrate(x**2/(a + b*x)**2, x) == x/b**2-a**2/(b**3*(a + b*x))-2*a*log(a + b*x)/b**3 +assert rubi_integrate(x/(a + b*x)**2, x) == a/(b**2*(a + b*x)) + log(a + b*x)/b**2 +assert rubi_integrate(1/(a + b*x)**2, x) == (-1)/(b*(a + b*x)) +assert rubi_integrate(1/(x*(a + b*x)**2), x) == 1/(a*(a + b*x)) + log(x)/a**2-log(a + b*x)/a**2 +assert rubi_integrate(1/(x**2*(a + b*x)**2), x) == (-1)/(a**2*x)-b/(a**2*(a + b*x))-2*b*log(x)/a**3 + 2*b*log(a + b*x)/a**3 +assert rubi_integrate(1/(x**3*(a + b*x)**2), x) == (-1/2)/(a**2*x**2) + 2*b/(a**3*x) + b**2/(a**3*(a + b*x)) + 3*b**2*log(x)/a**4-3*b**2*log(a + b*x)/a**4 +assert rubi_integrate(1/(x**4*(a + b*x)**2), x) == (-1/3)/(a**2*x**3) + b/(a**3*x**2)-3*b**2/(a**4*x)-b**3/(a**4*(a + b*x))-4*b**3*log(x)/a**5 + 4*b**3*log(a + b*x)/a**5 +assert rubi_integrate(1/(x**5*(a + b*x)**2), x) == (-1/4)/(a**2*x**4) + 2/3*b/(a**3*x**3)-3/2*b**2/(a**4*x**2) + 4*b**3/(a**5*x) + b**4/(a**5*(a + b*x)) + 5*b**4*log(x)/a**6-5*b**4*log(a + b*x)/a**6 +assert rubi_integrate(x**7/(a + b*x)**3, x) == 15*a**4*x/b**7-5*a**3*x**2/b**6 + 2*a**2*x**3/b**5-3/4*a*x**4/b**4 + 1/5*x**5/b**3 + 1/2*a**7/(b**8*(a + b*x)**2)-7*a**6/(b**8*(a + b*x))-21*a**5*log(a + b*x)/b**8 +assert rubi_integrate(x**6/(a + b*x)**3, x) == -10*a**3*x/b**6 + 3*a**2*x**2/b**5-a*x**3/b**4 + 1/4*x**4/b**3-1/2*a**6/(b**7*(a + b*x)**2) + 6*a**5/(b**7*(a + b*x)) + 15*a**4*log(a + b*x)/b**7 +assert rubi_integrate(x**5/(a + b*x)**3, x) == 6*a**2*x/b**5-3/2*a*x**2/b**4 + 1/3*x**3/b**3 + 1/2*a**5/(b**6*(a + b*x)**2)-5*a**4/(b**6*(a + b*x))-10*a**3*log(a + b*x)/b**6 +assert rubi_integrate(x**4/(a + b*x)**3, x) == -3*a*x/b**4 + 1/2*x**2/b**3-1/2*a**4/(b**5*(a + b*x)**2) + 4*a**3/(b**5*(a + b*x)) + 6*a**2*log(a + b*x)/b**5 +assert rubi_integrate(x**3/(a + b*x)**3, x) == x/b**3 + 1/2*a**3/(b**4*(a + b*x)**2)-3*a**2/(b**4*(a + b*x))-3*a*log(a + b*x)/b**4 +assert rubi_integrate(x**2/(a + b*x)**3, x) == -1/2*a**2/(b**3*(a + b*x)**2) + 2*a/(b**3*(a + b*x)) + log(a + b*x)/b**3 +assert rubi_integrate(x/(a + b*x)**3, x) == 1/2*x**2/(a*(a + b*x)**2) +assert rubi_integrate(1/(a + b*x)**3, x) == (-1/2)/(b*(a + b*x)**2) +assert rubi_integrate(1/(x*(a + b*x)**3), x) == 1/2/(a*(a + b*x)**2) + 1/(a**2*(a + b*x)) + log(x)/a**3-log(a + b*x)/a**3 +assert rubi_integrate(1/(x**2*(a + b*x)**3), x) == (-1)/(a**3*x)-1/2*b/(a**2*(a + b*x)**2)-2*b/(a**3*(a + b*x))-3*b*log(x)/a**4 + 3*b*log(a + b*x)/a**4 +assert rubi_integrate(1/(x**3*(a + b*x)**3), x) == (-1/2)/(a**3*x**2) + 3*b/(a**4*x) + 1/2*b**2/(a**3*(a + b*x)**2) + 3*b**2/(a**4*(a + b*x)) + 6*b**2*log(x)/a**5-6*b**2*log(a + b*x)/a**5 +assert rubi_integrate(1/(x**4*(a + b*x)**3), x) == (-1/3)/(a**3*x**3) + 3/2*b/(a**4*x**2)-6*b**2/(a**5*x)-1/2*b**3/(a**4*(a + b*x)**2)-4*b**3/(a**5*(a + b*x))-10*b**3*log(x)/a**6 + 10*b**3*log(a + b*x)/a**6 +assert rubi_integrate(1/(x**5*(a + b*x)**3), x) == (-1/4)/(a**3*x**4) + b/(a**4*x**3)-3*b**2/(a**5*x**2) + 10*b**3/(a**6*x) + 1/2*b**4/(a**5*(a + b*x)**2) + 5*b**4/(a**6*(a + b*x)) + 15*b**4*log(x)/a**7-15*b**4*log(a + b*x)/a**7 +assert rubi_integrate(x**8/(a + b*x)**4, x) == 35*a**4*x/b**8-10*a**3*x**2/b**7 + 10/3*a**2*x**3/b**6-a*x**4/b**5 + 1/5*x**5/b**4-1/3*a**8/(b**9*(a + b*x)**3) + 4*a**7/(b**9*(a + b*x)**2)-28*a**6/(b**9*(a + b*x))-56*a**5*log(a + b*x)/b**9 +assert rubi_integrate(x**7/(a + b*x)**4, x) == -20*a**3*x/b**7 + 5*a**2*x**2/b**6-4/3*a*x**3/b**5 + 1/4*x**4/b**4 + 1/3*a**7/(b**8*(a + b*x)**3)-7/2*a**6/(b**8*(a + b*x)**2) + 21*a**5/(b**8*(a + b*x)) + 35*a**4*log(a + b*x)/b**8 +assert rubi_integrate(x**6/(a + b*x)**4, x) == 10*a**2*x/b**6-2*a*x**2/b**5 + 1/3*x**3/b**4-1/3*a**6/(b**7*(a + b*x)**3) + 3*a**5/(b**7*(a + b*x)**2)-15*a**4/(b**7*(a + b*x))-20*a**3*log(a + b*x)/b**7 +assert rubi_integrate(x**5/(a + b*x)**4, x) == -4*a*x/b**5 + 1/2*x**2/b**4 + 1/3*a**5/(b**6*(a + b*x)**3)-5/2*a**4/(b**6*(a + b*x)**2) + 10*a**3/(b**6*(a + b*x)) + 10*a**2*log(a + b*x)/b**6 +assert rubi_integrate(x**4/(a + b*x)**4, x) == x/b**4-1/3*a**4/(b**5*(a + b*x)**3) + 2*a**3/(b**5*(a + b*x)**2)-6*a**2/(b**5*(a + b*x))-4*a*log(a + b*x)/b**5 +assert rubi_integrate(x**3/(a + b*x)**4, x) == 1/3*a**3/(b**4*(a + b*x)**3)-3/2*a**2/(b**4*(a + b*x)**2) + 3*a/(b**4*(a + b*x)) + log(a + b*x)/b**4 +assert rubi_integrate(x**2/(a + b*x)**4, x) == 1/3*x**3/(a*(a + b*x)**3) +assert rubi_integrate(x/(a + b*x)**4, x) == 1/3*a/(b**2*(a + b*x)**3) + (-1/2)/(b**2*(a + b*x)**2) +assert rubi_integrate(1/(a + b*x)**4, x) == (-1/3)/(b*(a + b*x)**3) +assert rubi_integrate(1/(x*(a + b*x)**4), x) == 1/3/(a*(a + b*x)**3) + 1/2/(a**2*(a + b*x)**2) + 1/(a**3*(a + b*x)) + log(x)/a**4-log(a + b*x)/a**4 +assert rubi_integrate(1/(x**2*(a + b*x)**4), x) == (-1)/(a**4*x)-1/3*b/(a**2*(a + b*x)**3)-b/(a**3*(a + b*x)**2)-3*b/(a**4*(a + b*x))-4*b*log(x)/a**5 + 4*b*log(a + b*x)/a**5 +assert rubi_integrate(1/(x**3*(a + b*x)**4), x) == (-1/2)/(a**4*x**2) + 4*b/(a**5*x) + 1/3*b**2/(a**3*(a + b*x)**3) + 3/2*b**2/(a**4*(a + b*x)**2) + 6*b**2/(a**5*(a + b*x)) + 10*b**2*log(x)/a**6-10*b**2*log(a + b*x)/a**6 +assert rubi_integrate(1/(x**4*(a + b*x)**4), x) == (-1/3)/(a**4*x**3) + 2*b/(a**5*x**2)-10*b**2/(a**6*x)-1/3*b**3/(a**4*(a + b*x)**3)-2*b**3/(a**5*(a + b*x)**2)-10*b**3/(a**6*(a + b*x))-20*b**3*log(x)/a**7 + 20*b**3*log(a + b*x)/a**7 +assert rubi_integrate(1/(x**5*(a + b*x)**4), x) == (-1/4)/(a**4*x**4) + 4/3*b/(a**5*x**3)-5*b**2/(a**6*x**2) + 20*b**3/(a**7*x) + 1/3*b**4/(a**5*(a + b*x)**3) + 5/2*b**4/(a**6*(a + b*x)**2) + 15*b**4/(a**7*(a + b*x)) + 35*b**4*log(x)/a**8-35*b**4*log(a + b*x)/a**8 +assert rubi_integrate(x**10/(a + b*x)**7, x) == -84*a**3*x/b**10 + 14*a**2*x**2/b**9-7/3*a*x**3/b**8 + 1/4*x**4/b**7-1/6*a**10/(b**11*(a + b*x)**6) + 2*a**9/(b**11*(a + b*x)**5)-45/4*a**8/(b**11*(a + b*x)**4) + 40*a**7/(b**11*(a + b*x)**3)-105*a**6/(b**11*(a + b*x)**2) + 252*a**5/(b**11*(a + b*x)) + 210*a**4*log(a + b*x)/b**11 +assert rubi_integrate(x**9/(a + b*x)**7, x) == 28*a**2*x/b**9-7/2*a*x**2/b**8 + 1/3*x**3/b**7 + 1/6*a**9/(b**10*(a + b*x)**6)-9/5*a**8/(b**10*(a + b*x)**5) + 9*a**7/(b**10*(a + b*x)**4)-28*a**6/(b**10*(a + b*x)**3) + 63*a**5/(b**10*(a + b*x)**2)-126*a**4/(b**10*(a + b*x))-84*a**3*log(a + b*x)/b**10 +assert rubi_integrate(x**8/(a + b*x)**7, x) == -7*a*x/b**8 + 1/2*x**2/b**7-1/6*a**8/(b**9*(a + b*x)**6) + 8/5*a**7/(b**9*(a + b*x)**5)-7*a**6/(b**9*(a + b*x)**4) + 56/3*a**5/(b**9*(a + b*x)**3)-35*a**4/(b**9*(a + b*x)**2) + 56*a**3/(b**9*(a + b*x)) + 28*a**2*log(a + b*x)/b**9 +assert rubi_integrate(x**7/(a + b*x)**7, x) == x/b**7 + 1/6*a**7/(b**8*(a + b*x)**6)-7/5*a**6/(b**8*(a + b*x)**5) + 21/4*a**5/(b**8*(a + b*x)**4)-35/3*a**4/(b**8*(a + b*x)**3) + 35/2*a**3/(b**8*(a + b*x)**2)-21*a**2/(b**8*(a + b*x))-7*a*log(a + b*x)/b**8 +assert rubi_integrate(x**6/(a + b*x)**7, x) == -1/6*a**6/(b**7*(a + b*x)**6) + 6/5*a**5/(b**7*(a + b*x)**5)-15/4*a**4/(b**7*(a + b*x)**4) + 20/3*a**3/(b**7*(a + b*x)**3)-15/2*a**2/(b**7*(a + b*x)**2) + 6*a/(b**7*(a + b*x)) + log(a + b*x)/b**7 +assert rubi_integrate(x**5/(a + b*x)**7, x) == 1/6*x**6/(a*(a + b*x)**6) +assert rubi_integrate(x**4/(a + b*x)**7, x) == 1/6*x**5/(a*(a + b*x)**6) + 1/30*x**5/(a**2*(a + b*x)**5) +assert rubi_integrate(x**3/(a + b*x)**7, x) == 1/6*x**4/(a*(a + b*x)**6) + 1/15*x**4/(a**2*(a + b*x)**5) + 1/60*x**4/(a**3*(a + b*x)**4),1/6*a**3/(b**4*(a + b*x)**6)-3/5*a**2/(b**4*(a + b*x)**5) + 3/4*a/(b**4*(a + b*x)**4) + (-1/3)/(b**4*(a + b*x)**3) +assert rubi_integrate(x**2/(a + b*x)**7, x) == -1/6*a**2/(b**3*(a + b*x)**6) + 2/5*a/(b**3*(a + b*x)**5) + (-1/4)/(b**3*(a + b*x)**4) +assert rubi_integrate(x/(a + b*x)**7, x) == 1/6*a/(b**2*(a + b*x)**6) + (-1/5)/(b**2*(a + b*x)**5) +assert rubi_integrate(1/(a + b*x)**7, x) == (-1/6)/(b*(a + b*x)**6) +assert rubi_integrate(1/(x*(a + b*x)**7), x) == 1/6/(a*(a + b*x)**6) + 1/5/(a**2*(a + b*x)**5) + 1/4/(a**3*(a + b*x)**4) + 1/3/(a**4*(a + b*x)**3) + 1/2/(a**5*(a + b*x)**2) + 1/(a**6*(a + b*x)) + log(x)/a**7-log(a + b*x)/a**7 +assert rubi_integrate(1/(x**2*(a + b*x)**7), x) == (-1)/(a**7*x)-1/6*b/(a**2*(a + b*x)**6)-2/5*b/(a**3*(a + b*x)**5)-3/4*b/(a**4*(a + b*x)**4)-4/3*b/(a**5*(a + b*x)**3)-5/2*b/(a**6*(a + b*x)**2)-6*b/(a**7*(a + b*x))-7*b*log(x)/a**8 + 7*b*log(a + b*x)/a**8 +assert rubi_integrate(1/(x**3*(a + b*x)**7), x) == (-1/2)/(a**7*x**2) + 7*b/(a**8*x) + 1/6*b**2/(a**3*(a + b*x)**6) + 3/5*b**2/(a**4*(a + b*x)**5) + 3/2*b**2/(a**5*(a + b*x)**4) + 10/3*b**2/(a**6*(a + b*x)**3) + 15/2*b**2/(a**7*(a + b*x)**2) + 21*b**2/(a**8*(a + b*x)) + 28*b**2*log(x)/a**9-28*b**2*log(a + b*x)/a**9 +assert rubi_integrate(1/(x**4*(a + b*x)**7), x) == (-1/3)/(a**7*x**3) + 7/2*b/(a**8*x**2)-28*b**2/(a**9*x)-1/6*b**3/(a**4*(a + b*x)**6)-4/5*b**3/(a**5*(a + b*x)**5)-5/2*b**3/(a**6*(a + b*x)**4)-20/3*b**3/(a**7*(a + b*x)**3)-35/2*b**3/(a**8*(a + b*x)**2)-56*b**3/(a**9*(a + b*x))-84*b**3*log(x)/a**10 + 84*b**3*log(a + b*x)/a**10 +assert rubi_integrate(x**12/(a + b*x)**10, x) == 55*a**2*x/b**12-5*a*x**2/b**11 + 1/3*x**3/b**10-1/9*a**12/(b**13*(a + b*x)**9) + 3/2*a**11/(b**13*(a + b*x)**8)-66/7*a**10/(b**13*(a + b*x)**7) + 110/3*a**9/(b**13*(a + b*x)**6)-99*a**8/(b**13*(a + b*x)**5) + 198*a**7/(b**13*(a + b*x)**4)-308*a**6/(b**13*(a + b*x)**3) + 396*a**5/(b**13*(a + b*x)**2)-495*a**4/(b**13*(a + b*x))-220*a**3*log(a + b*x)/b**13 +assert rubi_integrate(x**11/(a + b*x)**10, x) == -10*a*x/b**11 + 1/2*x**2/b**10 + 1/9*a**11/(b**12*(a + b*x)**9)-11/8*a**10/(b**12*(a + b*x)**8) + 55/7*a**9/(b**12*(a + b*x)**7)-55/2*a**8/(b**12*(a + b*x)**6) + 66*a**7/(b**12*(a + b*x)**5)-231/2*a**6/(b**12*(a + b*x)**4) + 154*a**5/(b**12*(a + b*x)**3)-165*a**4/(b**12*(a + b*x)**2) + 165*a**3/(b**12*(a + b*x)) + 55*a**2*log(a + b*x)/b**12 +assert rubi_integrate(x**10/(a + b*x)**10, x) == x/b**10-1/9*a**10/(b**11*(a + b*x)**9) + 5/4*a**9/(b**11*(a + b*x)**8)-45/7*a**8/(b**11*(a + b*x)**7) + 20*a**7/(b**11*(a + b*x)**6)-42*a**6/(b**11*(a + b*x)**5) + 63*a**5/(b**11*(a + b*x)**4)-70*a**4/(b**11*(a + b*x)**3) + 60*a**3/(b**11*(a + b*x)**2)-45*a**2/(b**11*(a + b*x))-10*a*log(a + b*x)/b**11 +assert rubi_integrate(x**9/(a + b*x)**10, x) == 1/9*a**9/(b**10*(a + b*x)**9)-9/8*a**8/(b**10*(a + b*x)**8) + 36/7*a**7/(b**10*(a + b*x)**7)-14*a**6/(b**10*(a + b*x)**6) + 126/5*a**5/(b**10*(a + b*x)**5)-63/2*a**4/(b**10*(a + b*x)**4) + 28*a**3/(b**10*(a + b*x)**3)-18*a**2/(b**10*(a + b*x)**2) + 9*a/(b**10*(a + b*x)) + log(a + b*x)/b**10 +assert rubi_integrate(x**8/(a + b*x)**10, x) == 1/9*x**9/(a*(a + b*x)**9) +assert rubi_integrate(x**7/(a + b*x)**10, x) == 1/9*x**8/(a*(a + b*x)**9) + 1/72*x**8/(a**2*(a + b*x)**8) +assert rubi_integrate(x**6/(a + b*x)**10, x) == 1/9*x**7/(a*(a + b*x)**9) + 1/36*x**7/(a**2*(a + b*x)**8) + 1/252*x**7/(a**3*(a + b*x)**7) +assert rubi_integrate(x**5/(a + b*x)**10, x) == 1/9*x**6/(a*(a + b*x)**9) + 1/24*x**6/(a**2*(a + b*x)**8) + 1/84*x**6/(a**3*(a + b*x)**7) + 1/504*x**6/(a**4*(a + b*x)**6) +assert rubi_integrate(x**4/(a + b*x)**10, x) == -1/9*a**4/(b**5*(a + b*x)**9) + 1/2*a**3/(b**5*(a + b*x)**8)-6/7*a**2/(b**5*(a + b*x)**7) + 2/3*a/(b**5*(a + b*x)**6) + (-1/5)/(b**5*(a + b*x)**5) +assert rubi_integrate(x**3/(a + b*x)**10, x) == 1/9*a**3/(b**4*(a + b*x)**9)-3/8*a**2/(b**4*(a + b*x)**8) + 3/7*a/(b**4*(a + b*x)**7) + (-1/6)/(b**4*(a + b*x)**6) +assert rubi_integrate(x**2/(a + b*x)**10, x) == -1/9*a**2/(b**3*(a + b*x)**9) + 1/4*a/(b**3*(a + b*x)**8) + (-1/7)/(b**3*(a + b*x)**7) +assert rubi_integrate(x/(a + b*x)**10, x) == 1/9*a/(b**2*(a + b*x)**9) + (-1/8)/(b**2*(a + b*x)**8) +assert rubi_integrate(1/(a + b*x)**10, x) == (-1/9)/(b*(a + b*x)**9) +assert rubi_integrate(1/(x*(a + b*x)**10), x) == 1/9/(a*(a + b*x)**9) + 1/8/(a**2*(a + b*x)**8) + 1/7/(a**3*(a + b*x)**7) + 1/6/(a**4*(a + b*x)**6) + 1/5/(a**5*(a + b*x)**5) + 1/4/(a**6*(a + b*x)**4) + 1/3/(a**7*(a + b*x)**3) + 1/2/(a**8*(a + b*x)**2) + 1/(a**9*(a + b*x)) + log(x)/a**10-log(a + b*x)/a**10 +assert rubi_integrate(1/(x**2*(a + b*x)**10), x) == (-1)/(a**10*x)-1/9*b/(a**2*(a + b*x)**9)-1/4*b/(a**3*(a + b*x)**8)-3/7*b/(a**4*(a + b*x)**7)-2/3*b/(a**5*(a + b*x)**6)-b/(a**6*(a + b*x)**5)-3/2*b/(a**7*(a + b*x)**4)-7/3*b/(a**8*(a + b*x)**3)-4*b/(a**9*(a + b*x)**2)-9*b/(a**10*(a + b*x))-10*b*log(x)/a**11 + 10*b*log(a + b*x)/a**11 +assert rubi_integrate(1/(x**3*(a + b*x)**10), x) == (-1/2)/(a**10*x**2) + 10*b/(a**11*x) + 1/9*b**2/(a**3*(a + b*x)**9) + 3/8*b**2/(a**4*(a + b*x)**8) + 6/7*b**2/(a**5*(a + b*x)**7) + 5/3*b**2/(a**6*(a + b*x)**6) + 3*b**2/(a**7*(a + b*x)**5) + 21/4*b**2/(a**8*(a + b*x)**4) + 28/3*b**2/(a**9*(a + b*x)**3) + 18*b**2/(a**10*(a + b*x)**2) + 45*b**2/(a**11*(a + b*x)) + 55*b**2*log(x)/a**12-55*b**2*log(a + b*x)/a**12 +assert rubi_integrate(1/(x**4*(a + b*x)**10), x) == (-1/3)/(a**10*x**3) + 5*b/(a**11*x**2)-55*b**2/(a**12*x)-1/9*b**3/(a**4*(a + b*x)**9)-1/2*b**3/(a**5*(a + b*x)**8)-10/7*b**3/(a**6*(a + b*x)**7)-10/3*b**3/(a**7*(a + b*x)**6)-7*b**3/(a**8*(a + b*x)**5)-14*b**3/(a**9*(a + b*x)**4)-28*b**3/(a**10*(a + b*x)**3)-60*b**3/(a**11*(a + b*x)**2)-165*b**3/(a**12*(a + b*x))-220*b**3*log(x)/a**13 + 220*b**3*log(a + b*x)/a**13 +assert rubi_integrate((a + b*x)**12/x**10, x) == -1/9*a**12/x**9-3/2*a**11*b/x**8-66/7*a**10*b**2/x**7-110/3*a**9*b**3/x**6-99*a**8*b**4/x**5-198*a**7*b**5/x**4-308*a**6*b**6/x**3-396*a**5*b**7/x**2-495*a**4*b**8/x + 66*a**2*b**10*x + 6*a*b**11*x**2 + 1/3*b**12*x**3 + 220*a**3*b**9*log(x) +assert rubi_integrate((a + b*x)**11/x**10, x) == -1/9*a**11/x**9-11/8*a**10*b/x**8-55/7*a**9*b**2/x**7-55/2*a**8*b**3/x**6-66*a**7*b**4/x**5-231/2*a**6*b**5/x**4-154*a**5*b**6/x**3-165*a**4*b**7/x**2-165*a**3*b**8/x + 11*a*b**10*x + 1/2*b**11*x**2 + 55*a**2*b**9*log(x) +assert rubi_integrate((a + b*x)**10/x**10, x) == -1/9*a**10/x**9-5/4*a**9*b/x**8-45/7*a**8*b**2/x**7-20*a**7*b**3/x**6-42*a**6*b**4/x**5-63*a**5*b**5/x**4-70*a**4*b**6/x**3-60*a**3*b**7/x**2-45*a**2*b**8/x + b**10*x + 10*a*b**9*log(x) +assert rubi_integrate((a + b*x)**9/x**10, x) == -1/9*a**9/x**9-9/8*a**8*b/x**8-36/7*a**7*b**2/x**7-14*a**6*b**3/x**6-126/5*a**5*b**4/x**5-63/2*a**4*b**5/x**4-28*a**3*b**6/x**3-18*a**2*b**7/x**2-9*a*b**8/x + b**9*log(x) +assert rubi_integrate((a + b*x)**8/x**10, x) == -1/9*(a + b*x)**9/(a*x**9) +assert rubi_integrate((a + b*x)**7/x**10, x) == -1/9*(a + b*x)**8/(a*x**9) + 1/72*b*(a + b*x)**8/(a**2*x**8) +assert rubi_integrate((a + b*x)**6/x**10, x) == -1/9*(a + b*x)**7/(a*x**9) + 1/36*b*(a + b*x)**7/(a**2*x**8)-1/252*b**2*(a + b*x)**7/(a**3*x**7) +assert rubi_integrate((a + b*x)**5/x**10, x) == -1/9*a**5/x**9-5/8*a**4*b/x**8-10/7*a**3*b**2/x**7-5/3*a**2*b**3/x**6-a*b**4/x**5-1/4*b**5/x**4 +assert rubi_integrate((a + b*x)**4/x**10, x) == -1/9*a**4/x**9-1/2*a**3*b/x**8-6/7*a**2*b**2/x**7-2/3*a*b**3/x**6-1/5*b**4/x**5 +assert rubi_integrate((a + b*x)**3/x**10, x) == -1/9*a**3/x**9-3/8*a**2*b/x**8-3/7*a*b**2/x**7-1/6*b**3/x**6 +assert rubi_integrate((a + b*x)**2/x**10, x) == -1/9*a**2/x**9-1/4*a*b/x**8-1/7*b**2/x**7 +assert rubi_integrate((a + b*x)/x**10, x) == -1/9*a/x**9-1/8*b/x**8 +assert rubi_integrate(1/x**10, x) == (-1/9)/x**9 +assert rubi_integrate(1/(x**10*(a + b*x)), x) == (-1/9)/(a*x**9) + 1/8*b/(a**2*x**8)-1/7*b**2/(a**3*x**7) + 1/6*b**3/(a**4*x**6)-1/5*b**4/(a**5*x**5) + 1/4*b**5/(a**6*x**4)-1/3*b**6/(a**7*x**3) + 1/2*b**7/(a**8*x**2)-b**8/(a**9*x)-b**9*log(x)/a**10 + b**9*log(a + b*x)/a**10 +assert rubi_integrate(1/(x**10*(a + b*x)**2), x) == (-1/9)/(a**2*x**9) + 1/4*b/(a**3*x**8)-3/7*b**2/(a**4*x**7) + 2/3*b**3/(a**5*x**6)-b**4/(a**6*x**5) + 3/2*b**5/(a**7*x**4)-7/3*b**6/(a**8*x**3) + 4*b**7/(a**9*x**2)-9*b**8/(a**10*x)-b**9/(a**10*(a + b*x))-10*b**9*log(x)/a**11 + 10*b**9*log(a + b*x)/a**11 +assert rubi_integrate(1/(x**10*(a + b*x)**3), x) == (-1/9)/(a**3*x**9) + 3/8*b/(a**4*x**8)-6/7*b**2/(a**5*x**7) + 5/3*b**3/(a**6*x**6)-3*b**4/(a**7*x**5) + 21/4*b**5/(a**8*x**4)-28/3*b**6/(a**9*x**3) + 18*b**7/(a**10*x**2)-45*b**8/(a**11*x)-1/2*b**9/(a**10*(a + b*x)**2)-10*b**9/(a**11*(a + b*x))-55*b**9*log(x)/a**12 + 55*b**9*log(a + b*x)/a**12 +assert rubi_integrate(1/(x*(2 + 3*x)), x) == 1/2*log(x)-1/2*log(2 + 3*x) +assert rubi_integrate(1/(x*(4 + 6*x)), x) == 1/4*log(x)-1/4*log(2 + 3*x) +assert rubi_integrate(1/(x**2*(4 + 6*x)), x) == (-1/4)/x-3/8*log(x) + 3/8*log(2 + 3*x) +assert rubi_integrate(1/(x**3*(4 + 6*x)), x) == (-1/8)/x**2 + 3/8/x + 9/16*log(x)-9/16*log(2 + 3*x) +assert rubi_integrate(1/(x**4*(4 + 6*x)), x) == (-1/12)/x**3 + 3/16/x**2 + (-9/16)/x-27/32*log(x) + 27/32*log(2 + 3*x) +assert rubi_integrate(1/(x**5*(4 + 6*x)), x) == (-1/16)/x**4 + 1/8/x**3 + (-9/32)/x**2 + 27/32/x + 81/64*log(x)-81/64*log(2 + 3*x) +assert rubi_integrate(1/(x*(4 + 6*x)**2), x) == 1/8/(2 + 3*x) + 1/16*log(x)-1/16*log(2 + 3*x) +assert rubi_integrate(1/(x**2*(4 + 6*x)**2), x) == (-1/16)/x + (-3/16)/(2 + 3*x)-3/16*log(x) + 3/16*log(2 + 3*x) +assert rubi_integrate(1/(x**3*(4 + 6*x)**2), x) == (-1/32)/x**2 + 3/16/x + 9/32/(2 + 3*x) + 27/64*log(x)-27/64*log(2 + 3*x) +assert rubi_integrate(1/(x**4*(4 + 6*x)**2), x) == (-1/48)/x**3 + 3/32/x**2 + (-27/64)/x + (-27/64)/(2 + 3*x)-27/32*log(x) + 27/32*log(2 + 3*x) +assert rubi_integrate(1/(x**5*(4 + 6*x)**2), x) == (-1/64)/x**4 + 1/16/x**3 + (-27/128)/x**2 + 27/32/x + 81/128/(2 + 3*x) + 405/256*log(x)-405/256*log(2 + 3*x) +assert rubi_integrate(1/(x*(4 + 6*x)**3), x) == 1/32/(2 + 3*x)**2 + 1/32/(2 + 3*x) + 1/64*log(x)-1/64*log(2 + 3*x) +assert rubi_integrate(1/(x**2*(4 + 6*x)**3), x) == (-1/64)/x + (-3/64)/(2 + 3*x)**2 + (-3/32)/(2 + 3*x)-9/128*log(x) + 9/128*log(2 + 3*x) +assert rubi_integrate(1/(x**3*(4 + 6*x)**3), x) == (-1/128)/x**2 + 9/128/x + 9/128/(2 + 3*x)**2 + 27/128/(2 + 3*x) + 27/128*log(x)-27/128*log(2 + 3*x) +assert rubi_integrate(1/(x**4*(4 + 6*x)**3), x) == (-1/192)/x**3 + 9/256/x**2 + (-27/128)/x + (-27/256)/(2 + 3*x)**2 + (-27/64)/(2 + 3*x)-135/256*log(x) + 135/256*log(2 + 3*x) +assert rubi_integrate(1/(x**5*(4 + 6*x)**3), x) == (-1/256)/x**4 + 3/128/x**3 + (-27/256)/x**2 + 135/256/x + 81/512/(2 + 3*x)**2 + 405/512/(2 + 3*x) + 1215/1024*log(x)-1215/1024*log(2 + 3*x) + +# Factor content out of denominator before including in Log? +assert rubi_integrate(1/(2 + 2*x), x) == 1/2*log(1 + x) +assert rubi_integrate(1/(4-6*x), x) == -1/6*log(2-3*x) +assert rubi_integrate(1/(a + x*sqrt(a)), x) == log(x + sqrt(a))/sqrt(a) +assert rubi_integrate(1/(a + x*sqrt(-a)), x) == log(a + x*sqrt(-a))/sqrt(-a) +assert rubi_integrate(1/(a**2 + x*sqrt(-a)), x) == log(a**2 + x*sqrt(-a))/sqrt(-a) +assert rubi_integrate(1/(a**3 + x*sqrt(-a)), x) == log(a**3 + x*sqrt(-a))/sqrt(-a) +assert rubi_integrate(1/(1/a + x*sqrt(-a)), x) == log(1-(-a)**(3/2)*x)/sqrt(-a) +assert rubi_integrate(1/(1/a**2 + x*sqrt(-a)), x) == log(1 + (-a)**(5/2)*x)/sqrt(-a) + +# Integrands of the form 1/(x**m*(a + b*x)) where m>0 is an integer and a**2=1 +assert rubi_integrate(1/(x*(1 + b*x)), x) == log(x)-log(1 + b*x) +assert rubi_integrate(1/(x*(-1 + b*x)), x) == -log(x) + log(1-b*x) +assert rubi_integrate(1/(x**2*(1 + b*x)), x) == (-1)/x-b*log(x) + b*log(1 + b*x) +assert rubi_integrate(1/(x**2*(-1 + b*x)), x) == 1/x-b*log(x) + b*log(1-b*x) + +# The b*Log[x] terms cannot cancel if ArcTanh[1 + 2*b*x] is returned instead of Logs! +assert rubi_integrate(b/x + 1/(x**2*(1 + b*x)), x) == (-1)/x + b*log(1 + b*x) + +# Integrands of the form x**m (a + b x)**(n/2 + +# n>0 +assert rubi_integrate(x**3*sqrt(a + b*x), x) == -2/3*a**3*(a + b*x)**(3/2)/b**4 + 6/5*a**2*(a + b*x)**(5/2)/b**4-6/7*a*(a + b*x)**(7/2)/b**4 + 2/9*(a + b*x)**(9/2)/b**4 +assert rubi_integrate(x**2*sqrt(a + b*x), x) == 2/3*a**2*(a + b*x)**(3/2)/b**3-4/5*a*(a + b*x)**(5/2)/b**3 + 2/7*(a + b*x)**(7/2)/b**3 +assert rubi_integrate(x*sqrt(a + b*x), x) == -2/3*a*(a + b*x)**(3/2)/b**2 + 2/5*(a + b*x)**(5/2)/b**2 +assert rubi_integrate(sqrt(a + b*x), x) == 2/3*(a + b*x)**(3/2)/b +assert rubi_integrate(sqrt(a + b*x)/x, x) == -2*arctanh(sqrt(a + b*x)/sqrt(a))*sqrt(a) + 2*sqrt(a + b*x) +assert rubi_integrate(sqrt(a + b*x)/x**2, x) == -b*arctanh(sqrt(a + b*x)/sqrt(a))/sqrt(a)-sqrt(a + b*x)/x +assert rubi_integrate(sqrt(a + b*x)/x**3, x) == 1/4*b**2*arctanh(sqrt(a + b*x)/sqrt(a))/a**(3/2)-1/2*sqrt(a + b*x)/x**2-1/4*b*sqrt(a + b*x)/(a*x) +assert rubi_integrate(sqrt(a + b*x)/x**4, x) == -1/8*b**3*arctanh(sqrt(a + b*x)/sqrt(a))/a**(5/2)-1/3*sqrt(a + b*x)/x**3-1/12*b*sqrt(a + b*x)/(a*x**2) + 1/8*b**2*sqrt(a + b*x)/(a**2*x) +assert rubi_integrate(x**3*(a + b*x)**(3/2), x) == -2/5*a**3*(a + b*x)**(5/2)/b**4 + 6/7*a**2*(a + b*x)**(7/2)/b**4-2/3*a*(a + b*x)**(9/2)/b**4 + 2/11*(a + b*x)**(11/2)/b**4 +assert rubi_integrate(x**2*(a + b*x)**(3/2), x) == 2/5*a**2*(a + b*x)**(5/2)/b**3-4/7*a*(a + b*x)**(7/2)/b**3 + 2/9*(a + b*x)**(9/2)/b**3 +assert rubi_integrate(x*(a + b*x)**(3/2), x) == -2/5*a*(a + b*x)**(5/2)/b**2 + 2/7*(a + b*x)**(7/2)/b**2 +assert rubi_integrate((a + b*x)**(3/2), x) == 2/5*(a + b*x)**(5/2)/b +assert rubi_integrate((a + b*x)**(3/2)/x, x) == 2/3*(a + b*x)**(3/2)-2*a**(3/2)*arctanh(sqrt(a + b*x)/sqrt(a)) + 2*a*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(3/2)/x**2, x) == -(a + b*x)**(3/2)/x-3*b*arctanh(sqrt(a + b*x)/sqrt(a))*sqrt(a) + 3*b*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(3/2)/x**3, x) == -1/2*(a + b*x)**(3/2)/x**2-3/4*b**2*arctanh(sqrt(a + b*x)/sqrt(a))/sqrt(a)-3/4*b*sqrt(a + b*x)/x +assert rubi_integrate((a + b*x)**(3/2)/x**4, x) == -1/3*(a + b*x)**(3/2)/x**3 + 1/8*b**3*arctanh(sqrt(a + b*x)/sqrt(a))/a**(3/2)-1/4*b*sqrt(a + b*x)/x**2-1/8*b**2*sqrt(a + b*x)/(a*x) +assert rubi_integrate(x**3*(a + b*x)**(5/2), x) == -2/7*a**3*(a + b*x)**(7/2)/b**4 + 2/3*a**2*(a + b*x)**(9/2)/b**4-6/11*a*(a + b*x)**(11/2)/b**4 + 2/13*(a + b*x)**(13/2)/b**4 +assert rubi_integrate(x**2*(a + b*x)**(5/2), x) == 2/7*a**2*(a + b*x)**(7/2)/b**3-4/9*a*(a + b*x)**(9/2)/b**3 + 2/11*(a + b*x)**(11/2)/b**3 +assert rubi_integrate(x*(a + b*x)**(5/2), x) == -2/7*a*(a + b*x)**(7/2)/b**2 + 2/9*(a + b*x)**(9/2)/b**2 +assert rubi_integrate((a + b*x)**(5/2), x) == 2/7*(a + b*x)**(7/2)/b +assert rubi_integrate((a + b*x)**(5/2)/x, x) == 2/3*a*(a + b*x)**(3/2) + 2/5*(a + b*x)**(5/2)-2*a**(5/2)*arctanh(sqrt(a + b*x)/sqrt(a)) + 2*a**2*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(5/2)/x**2, x) == 5/3*b*(a + b*x)**(3/2)-(a + b*x)**(5/2)/x-5*a**(3/2)*b*arctanh(sqrt(a + b*x)/sqrt(a)) + 5*a*b*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(5/2)/x**3, x) == -5/4*b*(a + b*x)**(3/2)/x-1/2*(a + b*x)**(5/2)/x**2-15/4*b**2*arctanh(sqrt(a + b*x)/sqrt(a))*sqrt(a) + 15/4*b**2*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(5/2)/x**4, x) == -5/12*b*(a + b*x)**(3/2)/x**2-1/3*(a + b*x)**(5/2)/x**3-5/8*b**3*arctanh(sqrt(a + b*x)/sqrt(a))/sqrt(a)-5/8*b**2*sqrt(a + b*x)/x +assert rubi_integrate((a + b*x)**(5/2)/x**5, x) == -5/24*b*(a + b*x)**(3/2)/x**3-1/4*(a + b*x)**(5/2)/x**4 + 5/64*b**4*arctanh(sqrt(a + b*x)/sqrt(a))/a**(3/2)-5/32*b**2*sqrt(a + b*x)/x**2-5/64*b**3*sqrt(a + b*x)/(a*x) +assert rubi_integrate(x**7*(a + b*x)**(9/2), x) == -2/11*a**7*(a + b*x)**(11/2)/b**8 + 14/13*a**6*(a + b*x)**(13/2)/b**8-14/5*a**5*(a + b*x)**(15/2)/b**8 + 70/17*a**4*(a + b*x)**(17/2)/b**8-70/19*a**3*(a + b*x)**(19/2)/b**8 + 2*a**2*(a + b*x)**(21/2)/b**8-14/23*a*(a + b*x)**(23/2)/b**8 + 2/25*(a + b*x)**(25/2)/b**8 +assert rubi_integrate(x**6*(a + b*x)**(9/2), x) == 2/11*a**6*(a + b*x)**(11/2)/b**7-12/13*a**5*(a + b*x)**(13/2)/b**7 + 2*a**4*(a + b*x)**(15/2)/b**7-40/17*a**3*(a + b*x)**(17/2)/b**7 + 30/19*a**2*(a + b*x)**(19/2)/b**7-4/7*a*(a + b*x)**(21/2)/b**7 + 2/23*(a + b*x)**(23/2)/b**7 +assert rubi_integrate(x**5*(a + b*x)**(9/2), x) == -2/11*a**5*(a + b*x)**(11/2)/b**6 + 10/13*a**4*(a + b*x)**(13/2)/b**6-4/3*a**3*(a + b*x)**(15/2)/b**6 + 20/17*a**2*(a + b*x)**(17/2)/b**6-10/19*a*(a + b*x)**(19/2)/b**6 + 2/21*(a + b*x)**(21/2)/b**6 +assert rubi_integrate(x**4*(a + b*x)**(9/2), x) == 2/11*a**4*(a + b*x)**(11/2)/b**5-8/13*a**3*(a + b*x)**(13/2)/b**5 + 4/5*a**2*(a + b*x)**(15/2)/b**5-8/17*a*(a + b*x)**(17/2)/b**5 + 2/19*(a + b*x)**(19/2)/b**5 +assert rubi_integrate(x**3*(a + b*x)**(9/2), x) == -2/11*a**3*(a + b*x)**(11/2)/b**4 + 6/13*a**2*(a + b*x)**(13/2)/b**4-2/5*a*(a + b*x)**(15/2)/b**4 + 2/17*(a + b*x)**(17/2)/b**4 +assert rubi_integrate(x**2*(a + b*x)**(9/2), x) == 2/11*a**2*(a + b*x)**(11/2)/b**3-4/13*a*(a + b*x)**(13/2)/b**3 + 2/15*(a + b*x)**(15/2)/b**3 +assert rubi_integrate(x*(a + b*x)**(9/2), x) == -2/11*a*(a + b*x)**(11/2)/b**2 + 2/13*(a + b*x)**(13/2)/b**2 +assert rubi_integrate((a + b*x)**(9/2), x) == 2/11*(a + b*x)**(11/2)/b +assert rubi_integrate((a + b*x)**(9/2)/x, x) == 2/3*a**3*(a + b*x)**(3/2) + 2/5*a**2*(a + b*x)**(5/2) + 2/7*a*(a + b*x)**(7/2) + 2/9*(a + b*x)**(9/2)-2*a**(9/2)*arctanh(sqrt(a + b*x)/sqrt(a)) + 2*a**4*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(9/2)/x**2, x) == 3*a**2*b*(a + b*x)**(3/2) + 9/5*a*b*(a + b*x)**(5/2) + 9/7*b*(a + b*x)**(7/2)-(a + b*x)**(9/2)/x-9*a**(7/2)*b*arctanh(sqrt(a + b*x)/sqrt(a)) + 9*a**3*b*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(9/2)/x**3, x) == 21/4*a*b**2*(a + b*x)**(3/2) + 63/20*b**2*(a + b*x)**(5/2)-9/4*b*(a + b*x)**(7/2)/x-1/2*(a + b*x)**(9/2)/x**2-63/4*a**(5/2)*b**2*arctanh(sqrt(a + b*x)/sqrt(a)) + 63/4*a**2*b**2*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(9/2)/x**4, x) == 35/8*b**3*(a + b*x)**(3/2)-21/8*b**2*(a + b*x)**(5/2)/x-3/4*b*(a + b*x)**(7/2)/x**2-1/3*(a + b*x)**(9/2)/x**3-105/8*a**(3/2)*b**3*arctanh(sqrt(a + b*x)/sqrt(a)) + 105/8*a*b**3*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(9/2)/x**5, x) == -105/64*b**3*(a + b*x)**(3/2)/x-21/32*b**2*(a + b*x)**(5/2)/x**2-3/8*b*(a + b*x)**(7/2)/x**3-1/4*(a + b*x)**(9/2)/x**4-315/64*b**4*arctanh(sqrt(a + b*x)/sqrt(a))*sqrt(a) + 315/64*b**4*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(9/2)/x**6, x) == -21/64*b**3*(a + b*x)**(3/2)/x**2-21/80*b**2*(a + b*x)**(5/2)/x**3-9/40*b*(a + b*x)**(7/2)/x**4-1/5*(a + b*x)**(9/2)/x**5-63/128*b**5*arctanh(sqrt(a + b*x)/sqrt(a))/sqrt(a)-63/128*b**4*sqrt(a + b*x)/x +assert rubi_integrate((a + b*x)**(9/2)/x**7, x) == -7/64*b**3*(a + b*x)**(3/2)/x**3-21/160*b**2*(a + b*x)**(5/2)/x**4-3/20*b*(a + b*x)**(7/2)/x**5-1/6*(a + b*x)**(9/2)/x**6 + 21/512*b**6*arctanh(sqrt(a + b*x)/sqrt(a))/a**(3/2)-21/256*b**4*sqrt(a + b*x)/x**2-21/512*b**5*sqrt(a + b*x)/(a*x) +assert rubi_integrate((a + b*x)**(9/2)/x**8, x) == -3/64*b**3*(a + b*x)**(3/2)/x**4-3/40*b**2*(a + b*x)**(5/2)/x**5-3/28*b*(a + b*x)**(7/2)/x**6-1/7*(a + b*x)**(9/2)/x**7-9/1024*b**7*arctanh(sqrt(a + b*x)/sqrt(a))/a**(5/2)-3/128*b**4*sqrt(a + b*x)/x**3-3/512*b**5*sqrt(a + b*x)/(a*x**2) + 9/1024*b**6*sqrt(a + b*x)/(a**2*x) +assert rubi_integrate(sqrt(-a + b*x)/x, x) == -2*arctan(sqrt(-a + b*x)/sqrt(a))*sqrt(a) + 2*sqrt(-a + b*x) +assert rubi_integrate(sqrt(-a + b*x)/x**2, x) == b*arctan(sqrt(-a + b*x)/sqrt(a))/sqrt(a)-sqrt(-a + b*x)/x +assert rubi_integrate(sqrt(-a + b*x)/x**3, x) == 1/4*b**2*arctan(sqrt(-a + b*x)/sqrt(a))/a**(3/2)-1/2*sqrt(-a + b*x)/x**2 + 1/4*b*sqrt(-a + b*x)/(a*x) +assert rubi_integrate((-a + b*x)**(3/2)/x, x) == 2/3*(-a + b*x)**(3/2) + 2*a**(3/2)*arctan(sqrt(-a + b*x)/sqrt(a))-2*a*sqrt(-a + b*x) +assert rubi_integrate((-a + b*x)**(3/2)/x**2, x) == -(-a + b*x)**(3/2)/x-3*b*arctan(sqrt(-a + b*x)/sqrt(a))*sqrt(a) + 3*b*sqrt(-a + b*x) +assert rubi_integrate((-a + b*x)**(3/2)/x**3, x) == -1/2*(-a + b*x)**(3/2)/x**2 + 3/4*b**2*arctan(sqrt(-a + b*x)/sqrt(a))/sqrt(a)-3/4*b*sqrt(-a + b*x)/x +assert rubi_integrate((-a + b*x)**(5/2)/x, x) == -2/3*a*(-a + b*x)**(3/2) + 2/5*(-a + b*x)**(5/2)-2*a**(5/2)*arctan(sqrt(-a + b*x)/sqrt(a)) + 2*a**2*sqrt(-a + b*x) +assert rubi_integrate((-a + b*x)**(5/2)/x**2, x) == 5/3*b*(-a + b*x)**(3/2)-(-a + b*x)**(5/2)/x + 5*a**(3/2)*b*arctan(sqrt(-a + b*x)/sqrt(a))-5*a*b*sqrt(-a + b*x) +assert rubi_integrate((-a + b*x)**(5/2)/x**3, x) == -5/4*b*(-a + b*x)**(3/2)/x-1/2*(-a + b*x)**(5/2)/x**2-15/4*b**2*arctan(sqrt(-a + b*x)/sqrt(a))*sqrt(a) + 15/4*b**2*sqrt(-a + b*x) + +# n<0 +assert rubi_integrate(x**4/sqrt(a + b*x), x) == -8/3*a**3*(a + b*x)**(3/2)/b**5 + 12/5*a**2*(a + b*x)**(5/2)/b**5-8/7*a*(a + b*x)**(7/2)/b**5 + 2/9*(a + b*x)**(9/2)/b**5 + 2*a**4*sqrt(a + b*x)/b**5 +assert rubi_integrate(x**3/sqrt(a + b*x), x) == 2*a**2*(a + b*x)**(3/2)/b**4-6/5*a*(a + b*x)**(5/2)/b**4 + 2/7*(a + b*x)**(7/2)/b**4-2*a**3*sqrt(a + b*x)/b**4 +assert rubi_integrate(x**2/sqrt(a + b*x), x) == -4/3*a*(a + b*x)**(3/2)/b**3 + 2/5*(a + b*x)**(5/2)/b**3 + 2*a**2*sqrt(a + b*x)/b**3 +assert rubi_integrate(x/sqrt(a + b*x), x) == 2/3*(a + b*x)**(3/2)/b**2-2*a*sqrt(a + b*x)/b**2 +assert rubi_integrate(1/sqrt(a + b*x), x) == 2*sqrt(a + b*x)/b +assert rubi_integrate(1/(x*sqrt(a + b*x)), x) == -2*arctanh(sqrt(a + b*x)/sqrt(a))/sqrt(a) +assert rubi_integrate(1/(x**2*sqrt(a + b*x)), x) == b*arctanh(sqrt(a + b*x)/sqrt(a))/a**(3/2)-sqrt(a + b*x)/(a*x) +assert rubi_integrate(1/(x**3*sqrt(a + b*x)), x) == -3/4*b**2*arctanh(sqrt(a + b*x)/sqrt(a))/a**(5/2)-1/2*sqrt(a + b*x)/(a*x**2) + 3/4*b*sqrt(a + b*x)/(a**2*x) +assert rubi_integrate(1/(x**4*sqrt(a + b*x)), x) == 5/8*b**3*arctanh(sqrt(a + b*x)/sqrt(a))/a**(7/2)-1/3*sqrt(a + b*x)/(a*x**3) + 5/12*b*sqrt(a + b*x)/(a**2*x**2)-5/8*b**2*sqrt(a + b*x)/(a**3*x) +assert rubi_integrate(x**4/(a + b*x)**(3/2), x) == 4*a**2*(a + b*x)**(3/2)/b**5-8/5*a*(a + b*x)**(5/2)/b**5 + 2/7*(a + b*x)**(7/2)/b**5-2*a**4/(b**5*sqrt(a + b*x))-8*a**3*sqrt(a + b*x)/b**5 +assert rubi_integrate(x**3/(a + b*x)**(3/2), x) == -2*a*(a + b*x)**(3/2)/b**4 + 2/5*(a + b*x)**(5/2)/b**4 + 2*a**3/(b**4*sqrt(a + b*x)) + 6*a**2*sqrt(a + b*x)/b**4 +assert rubi_integrate(x**2/(a + b*x)**(3/2), x) == 2/3*(a + b*x)**(3/2)/b**3-2*a**2/(b**3*sqrt(a + b*x))-4*a*sqrt(a + b*x)/b**3 +assert rubi_integrate(x/(a + b*x)**(3/2), x) == 2*a/(b**2*sqrt(a + b*x)) + 2*sqrt(a + b*x)/b**2 +assert rubi_integrate(1/(a + b*x)**(3/2), x) == (-2)/(b*sqrt(a + b*x)) +assert rubi_integrate(1/(x*(a + b*x)**(3/2)), x) == -2*arctanh(sqrt(a + b*x)/sqrt(a))/a**(3/2) + 2/(a*sqrt(a + b*x)) +assert rubi_integrate(1/(x**2*(a + b*x)**(3/2)), x) == 3*b*arctanh(sqrt(a + b*x)/sqrt(a))/a**(5/2) + 2/(a*x*sqrt(a + b*x))-3*sqrt(a + b*x)/(a**2*x) +assert rubi_integrate(1/(x**3*(a + b*x)**(3/2)), x) == -15/4*b**2*arctanh(sqrt(a + b*x)/sqrt(a))/a**(7/2) + 2/(a*x**2*sqrt(a + b*x))-5/2*sqrt(a + b*x)/(a**2*x**2) + 15/4*b*sqrt(a + b*x)/(a**3*x) +assert rubi_integrate(x**4/(a + b*x)**(5/2), x) == -2/3*a**4/(b**5*(a + b*x)**(3/2))-8/3*a*(a + b*x)**(3/2)/b**5 + 2/5*(a + b*x)**(5/2)/b**5 + 8*a**3/(b**5*sqrt(a + b*x)) + 12*a**2*sqrt(a + b*x)/b**5 +assert rubi_integrate(x**3/(a + b*x)**(5/2), x) == 2/3*a**3/(b**4*(a + b*x)**(3/2)) + 2/3*(a + b*x)**(3/2)/b**4-6*a**2/(b**4*sqrt(a + b*x))-6*a*sqrt(a + b*x)/b**4 +assert rubi_integrate(x**2/(a + b*x)**(5/2), x) == -2/3*a**2/(b**3*(a + b*x)**(3/2)) + 4*a/(b**3*sqrt(a + b*x)) + 2*sqrt(a + b*x)/b**3 +assert rubi_integrate(x/(a + b*x)**(5/2), x) == 2/3*a/(b**2*(a + b*x)**(3/2)) + (-2)/(b**2*sqrt(a + b*x)) +assert rubi_integrate(1/(a + b*x)**(5/2), x) == (-2/3)/(b*(a + b*x)**(3/2)) +assert rubi_integrate(1/(x*(a + b*x)**(5/2)), x) == 2/3/(a*(a + b*x)**(3/2))-2*arctanh(sqrt(a + b*x)/sqrt(a))/a**(5/2) + 2/(a**2*sqrt(a + b*x)) +assert rubi_integrate(1/(x**2*(a + b*x)**(5/2)), x) == 2/3/(a*x*(a + b*x)**(3/2)) + 5*b*arctanh(sqrt(a + b*x)/sqrt(a))/a**(7/2) + 10/3/(a**2*x*sqrt(a + b*x))-5*sqrt(a + b*x)/(a**3*x) +assert rubi_integrate(1/(x**3*(a + b*x)**(5/2)), x) == 2/3/(a*x**2*(a + b*x)**(3/2))-35/4*b**2*arctanh(sqrt(a + b*x)/sqrt(a))/a**(9/2) + 14/3/(a**2*x**2*sqrt(a + b*x))-35/6*sqrt(a + b*x)/(a**3*x**2) + 35/4*b*sqrt(a + b*x)/(a**4*x) +assert rubi_integrate(1/(x*sqrt(-a + b*x)), x) == 2*arctan(sqrt(-a + b*x)/sqrt(a))/sqrt(a) +assert rubi_integrate(1/(x**2*sqrt(-a + b*x)), x) == b*arctan(sqrt(-a + b*x)/sqrt(a))/a**(3/2) + sqrt(-a + b*x)/(a*x) +assert rubi_integrate(1/(x**3*sqrt(-a + b*x)), x) == 3/4*b**2*arctan(sqrt(-a + b*x)/sqrt(a))/a**(5/2) + 1/2*sqrt(-a + b*x)/(a*x**2) + 3/4*b*sqrt(-a + b*x)/(a**2*x) +assert rubi_integrate(1/(x*(-a + b*x)**(3/2)), x) == -2*arctan(sqrt(-a + b*x)/sqrt(a))/a**(3/2) + (-2)/(a*sqrt(-a + b*x)) +assert rubi_integrate(1/(x**2*(-a + b*x)**(3/2)), x) == -3*b*arctan(sqrt(-a + b*x)/sqrt(a))/a**(5/2) + (-2)/(a*x*sqrt(-a + b*x))-3*sqrt(-a + b*x)/(a**2*x) +assert rubi_integrate(1/(x**3*(-a + b*x)**(3/2)), x) == -15/4*b**2*arctan(sqrt(-a + b*x)/sqrt(a))/a**(7/2) + (-2)/(a*x**2*sqrt(-a + b*x))-5/2*sqrt(-a + b*x)/(a**2*x**2)-15/4*b*sqrt(-a + b*x)/(a**3*x) +assert rubi_integrate(1/(x*(-a + b*x)**(5/2)), x) == (-2/3)/(a*(-a + b*x)**(3/2)) + 2*arctan(sqrt(-a + b*x)/sqrt(a))/a**(5/2) + 2/(a**2*sqrt(-a + b*x)) +assert rubi_integrate(1/(x**2*(-a + b*x)**(5/2)), x) == (-2/3)/(a*x*(-a + b*x)**(3/2)) + 5*b*arctan(sqrt(-a + b*x)/sqrt(a))/a**(7/2) + 10/3/(a**2*x*sqrt(-a + b*x)) + 5*sqrt(-a + b*x)/(a**3*x) +assert rubi_integrate(1/(x**3*(-a + b*x)**(5/2)), x) == (-2/3)/(a*x**2*(-a + b*x)**(3/2)) + 35/4*b**2*arctan(sqrt(-a + b*x)/sqrt(a))/a**(9/2) + 14/3/(a**2*x**2*sqrt(-a + b*x)) + 35/6*sqrt(-a + b*x)/(a**3*x**2) + 35/4*b*sqrt(-a + b*x)/(a**4*x) +assert rubi_integrate(1/2*x**(-1 + m)*(2*a*m + b*(-1 + 2*m)*x)/(a + b*x)**(3/2), x) == x**m/sqrt(a + b*x) +assert rubi_integrate(-1/2*b*x**m/(a + b*x)**(3/2) + m*x**(-1 + m)/sqrt(a + b*x), x) == x**m/sqrt(a + b*x) +assert rubi_integrate(x**(1/2*(1-n) + 1/2*(-3 + n))/sqrt(a + b*x), x) == -2*arctanh(sqrt(a + b*x)/sqrt(a))/sqrt(a) + +# Integrands of the form x**m (a + b x)**(n/3 + +# n>0 +assert rubi_integrate(x**3*(a + b*x)**(1/3), x) == -3/4*a**3*(a + b*x)**(4/3)/b**4 + 9/7*a**2*(a + b*x)**(7/3)/b**4-9/10*a*(a + b*x)**(10/3)/b**4 + 3/13*(a + b*x)**(13/3)/b**4 +assert rubi_integrate(x**2*(a + b*x)**(1/3), x) == 3/4*a**2*(a + b*x)**(4/3)/b**3-6/7*a*(a + b*x)**(7/3)/b**3 + 3/10*(a + b*x)**(10/3)/b**3 +assert rubi_integrate(x*(a + b*x)**(1/3), x) == -3/4*a*(a + b*x)**(4/3)/b**2 + 3/7*(a + b*x)**(7/3)/b**2 +assert rubi_integrate((a + b*x)**(1/3), x) == 3/4*(a + b*x)**(4/3)/b +assert rubi_integrate((a + b*x)**(1/3)/x, x) == 3*(a + b*x)**(1/3)-1/2*a**(1/3)*log(x) + 3/2*a**(1/3)*log(a**(1/3)-(a + b*x)**(1/3))-a**(1/3)*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3) +assert rubi_integrate((a + b*x)**(1/3)/x**2, x) == -(a + b*x)**(1/3)/x-1/6*b*log(x)/a**(2/3) + 1/2*b*log(a**(1/3)-(a + b*x)**(1/3))/a**(2/3)-b*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(2/3)*sqrt(3)) +assert rubi_integrate((a + b*x)**(1/3)/x**3, x) == -1/2*(a + b*x)**(1/3)/x**2-1/6*b*(a + b*x)**(1/3)/(a*x) + 1/18*b**2*log(x)/a**(5/3)-1/6*b**2*log(a**(1/3)-(a + b*x)**(1/3))/a**(5/3) + 1/3*b**2*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(5/3)*sqrt(3)) +assert rubi_integrate(x**3*(a + b*x)**(2/3), x) == -3/5*a**3*(a + b*x)**(5/3)/b**4 + 9/8*a**2*(a + b*x)**(8/3)/b**4-9/11*a*(a + b*x)**(11/3)/b**4 + 3/14*(a + b*x)**(14/3)/b**4 +assert rubi_integrate(x**2*(a + b*x)**(2/3), x) == 3/5*a**2*(a + b*x)**(5/3)/b**3-3/4*a*(a + b*x)**(8/3)/b**3 + 3/11*(a + b*x)**(11/3)/b**3 +assert rubi_integrate(x*(a + b*x)**(2/3), x) == -3/5*a*(a + b*x)**(5/3)/b**2 + 3/8*(a + b*x)**(8/3)/b**2 +assert rubi_integrate((a + b*x)**(2/3), x) == 3/5*(a + b*x)**(5/3)/b +assert rubi_integrate((a + b*x)**(2/3)/x, x) == 3/2*(a + b*x)**(2/3)-1/2*a**(2/3)*log(x) + 3/2*a**(2/3)*log(a**(1/3)-(a + b*x)**(1/3)) + a**(2/3)*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3) +assert rubi_integrate((a + b*x)**(2/3)/x**2, x) == -(a + b*x)**(2/3)/x-1/3*b*log(x)/a**(1/3) + b*log(a**(1/3)-(a + b*x)**(1/3))/a**(1/3) + 2*b*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(1/3)*sqrt(3)) +assert rubi_integrate((a + b*x)**(2/3)/x**3, x) == -1/2*(a + b*x)**(2/3)/x**2-1/3*b*(a + b*x)**(2/3)/(a*x) + 1/18*b**2*log(x)/a**(4/3)-1/6*b**2*log(a**(1/3)-(a + b*x)**(1/3))/a**(4/3)-1/3*b**2*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(4/3)*sqrt(3)) +assert rubi_integrate(x**3*(a + b*x)**(4/3), x) == -3/7*a**3*(a + b*x)**(7/3)/b**4 + 9/10*a**2*(a + b*x)**(10/3)/b**4-9/13*a*(a + b*x)**(13/3)/b**4 + 3/16*(a + b*x)**(16/3)/b**4 +assert rubi_integrate(x**2*(a + b*x)**(4/3), x) == 3/7*a**2*(a + b*x)**(7/3)/b**3-3/5*a*(a + b*x)**(10/3)/b**3 + 3/13*(a + b*x)**(13/3)/b**3 +assert rubi_integrate(x*(a + b*x)**(4/3), x) == -3/7*a*(a + b*x)**(7/3)/b**2 + 3/10*(a + b*x)**(10/3)/b**2 +assert rubi_integrate((a + b*x)**(4/3), x) == 3/7*(a + b*x)**(7/3)/b +assert rubi_integrate((a + b*x)**(4/3)/x, x) == 3*a*(a + b*x)**(1/3) + 3/4*(a + b*x)**(4/3)-1/2*a**(4/3)*log(x) + 3/2*a**(4/3)*log(a**(1/3)-(a + b*x)**(1/3))-a**(4/3)*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3) +assert rubi_integrate((a + b*x)**(4/3)/x**2, x) == 4*b*(a + b*x)**(1/3)-(a + b*x)**(4/3)/x-2/3*a**(1/3)*b*log(x) + 2*a**(1/3)*b*log(a**(1/3)-(a + b*x)**(1/3))-4*a**(1/3)*b*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/sqrt(3) +assert rubi_integrate((a + b*x)**(4/3)/x**3, x) == -2/3*b*(a + b*x)**(1/3)/x-1/2*(a + b*x)**(4/3)/x**2-1/9*b**2*log(x)/a**(2/3) + 1/3*b**2*log(a**(1/3)-(a + b*x)**(1/3))/a**(2/3)-2/3*b**2*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(2/3)*sqrt(3)) + +# n<0 +assert rubi_integrate(x**3/(a + b*x)**(1/3), x) == -3/2*a**3*(a + b*x)**(2/3)/b**4 + 9/5*a**2*(a + b*x)**(5/3)/b**4-9/8*a*(a + b*x)**(8/3)/b**4 + 3/11*(a + b*x)**(11/3)/b**4 +assert rubi_integrate(x**2/(a + b*x)**(1/3), x) == 3/2*a**2*(a + b*x)**(2/3)/b**3-6/5*a*(a + b*x)**(5/3)/b**3 + 3/8*(a + b*x)**(8/3)/b**3 +assert rubi_integrate(x/(a + b*x)**(1/3), x) == -3/2*a*(a + b*x)**(2/3)/b**2 + 3/5*(a + b*x)**(5/3)/b**2 +assert rubi_integrate(1/(a + b*x)**(1/3), x) == 3/2*(a + b*x)**(2/3)/b +assert rubi_integrate(1/(x*(a + b*x)**(1/3)), x) == -1/2*log(x)/a**(1/3) + 3/2*log(a**(1/3)-(a + b*x)**(1/3))/a**(1/3) + arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/a**(1/3) +assert rubi_integrate(1/(x**2*(a + b*x)**(1/3)), x) == -(a + b*x)**(2/3)/(a*x) + 1/6*b*log(x)/a**(4/3)-1/2*b*log(a**(1/3)-(a + b*x)**(1/3))/a**(4/3)-b*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(4/3)*sqrt(3)) +assert rubi_integrate(1/(x**3*(a + b*x)**(1/3)), x) == -1/2*(a + b*x)**(2/3)/(a*x**2) + 2/3*b*(a + b*x)**(2/3)/(a**2*x)-1/9*b**2*log(x)/a**(7/3) + 1/3*b**2*log(a**(1/3)-(a + b*x)**(1/3))/a**(7/3) + 2/3*b**2*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(7/3)*sqrt(3)) +assert rubi_integrate(x**3/(-a + b*x)**(1/3), x) == 3/2*a**3*(-a + b*x)**(2/3)/b**4 + 9/5*a**2*(-a + b*x)**(5/3)/b**4 + 9/8*a*(-a + b*x)**(8/3)/b**4 + 3/11*(-a + b*x)**(11/3)/b**4 +assert rubi_integrate(x**2/(-a + b*x)**(1/3), x) == 3/2*a**2*(-a + b*x)**(2/3)/b**3 + 6/5*a*(-a + b*x)**(5/3)/b**3 + 3/8*(-a + b*x)**(8/3)/b**3 +assert rubi_integrate(x/(-a + b*x)**(1/3), x) == 3/2*a*(-a + b*x)**(2/3)/b**2 + 3/5*(-a + b*x)**(5/3)/b**2 +assert rubi_integrate(1/(-a + b*x)**(1/3), x) == 3/2*(-a + b*x)**(2/3)/b +assert rubi_integrate(1/(x*(-a + b*x)**(1/3)), x) == 1/2*log(x)/a**(1/3)-3/2*log(a**(1/3) + (-a + b*x)**(1/3))/a**(1/3)-arctan((a**(1/3)-2*(-a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/a**(1/3) +assert rubi_integrate(1/(x**2*(-a + b*x)**(1/3)), x) == (-a + b*x)**(2/3)/(a*x) + 1/6*b*log(x)/a**(4/3)-1/2*b*log(a**(1/3) + (-a + b*x)**(1/3))/a**(4/3)-b*arctan((a**(1/3)-2*(-a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(4/3)*sqrt(3)) +assert rubi_integrate(1/(x**3*(-a + b*x)**(1/3)), x) == 1/2*(-a + b*x)**(2/3)/(a*x**2) + 2/3*b*(-a + b*x)**(2/3)/(a**2*x) + 1/9*b**2*log(x)/a**(7/3)-1/3*b**2*log(a**(1/3) + (-a + b*x)**(1/3))/a**(7/3)-2/3*b**2*arctan((a**(1/3)-2*(-a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(7/3)*sqrt(3)) +assert rubi_integrate(x**3/(a + b*x)**(2/3), x) == -3*a**3*(a + b*x)**(1/3)/b**4 + 9/4*a**2*(a + b*x)**(4/3)/b**4-9/7*a*(a + b*x)**(7/3)/b**4 + 3/10*(a + b*x)**(10/3)/b**4 +assert rubi_integrate(x**2/(a + b*x)**(2/3), x) == 3*a**2*(a + b*x)**(1/3)/b**3-3/2*a*(a + b*x)**(4/3)/b**3 + 3/7*(a + b*x)**(7/3)/b**3 +assert rubi_integrate(x/(a + b*x)**(2/3), x) == -3*a*(a + b*x)**(1/3)/b**2 + 3/4*(a + b*x)**(4/3)/b**2 +assert rubi_integrate(1/(a + b*x)**(2/3), x) == 3*(a + b*x)**(1/3)/b +assert rubi_integrate(1/(x*(a + b*x)**(2/3)), x) == -1/2*log(x)/a**(2/3) + 3/2*log(a**(1/3)-(a + b*x)**(1/3))/a**(2/3)-arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/a**(2/3) +assert rubi_integrate(1/(x**2*(a + b*x)**(2/3)), x) == -(a + b*x)**(1/3)/(a*x) + 1/3*b*log(x)/a**(5/3)-b*log(a**(1/3)-(a + b*x)**(1/3))/a**(5/3) + 2*b*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(5/3)*sqrt(3)) +assert rubi_integrate(1/(x**3*(a + b*x)**(2/3)), x) == -1/2*(a + b*x)**(1/3)/(a*x**2) + 5/6*b*(a + b*x)**(1/3)/(a**2*x)-5/18*b**2*log(x)/a**(8/3) + 5/6*b**2*log(a**(1/3)-(a + b*x)**(1/3))/a**(8/3)-5/3*b**2*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(8/3)*sqrt(3)) +assert rubi_integrate(x**3/(a + b*x)**(4/3), x) == 3*a**3/(b**4*(a + b*x)**(1/3)) + 9/2*a**2*(a + b*x)**(2/3)/b**4-9/5*a*(a + b*x)**(5/3)/b**4 + 3/8*(a + b*x)**(8/3)/b**4 +assert rubi_integrate(x**2/(a + b*x)**(4/3), x) == -3*a**2/(b**3*(a + b*x)**(1/3))-3*a*(a + b*x)**(2/3)/b**3 + 3/5*(a + b*x)**(5/3)/b**3 +assert rubi_integrate(x/(a + b*x)**(4/3), x) == 3*a/(b**2*(a + b*x)**(1/3)) + 3/2*(a + b*x)**(2/3)/b**2 +assert rubi_integrate(1/(a + b*x)**(4/3), x) == (-3)/(b*(a + b*x)**(1/3)) +assert rubi_integrate(1/(x*(a + b*x)**(4/3)), x) == 3/(a*(a + b*x)**(1/3))-1/2*log(x)/a**(4/3) + 3/2*log(a**(1/3)-(a + b*x)**(1/3))/a**(4/3) + arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/a**(4/3) +assert rubi_integrate(1/(x**2*(a + b*x)**(4/3)), x) == 3/(a*x*(a + b*x)**(1/3))-4*(a + b*x)**(2/3)/(a**2*x) + 2/3*b*log(x)/a**(7/3)-2*b*log(a**(1/3)-(a + b*x)**(1/3))/a**(7/3)-4*b*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(7/3)*sqrt(3)) +assert rubi_integrate(1/(x**3*(a + b*x)**(4/3)), x) == 3/(a*x**2*(a + b*x)**(1/3))-7/2*(a + b*x)**(2/3)/(a**2*x**2) + 14/3*b*(a + b*x)**(2/3)/(a**3*x)-7/9*b**2*log(x)/a**(10/3) + 7/3*b**2*log(a**(1/3)-(a + b*x)**(1/3))/a**(10/3) + 14/3*b**2*arctan((a**(1/3) + 2*(a + b*x)**(1/3))/(a**(1/3)*sqrt(3)))/(a**(10/3)*sqrt(3)) +assert rubi_integrate(1/(x*(a**3 + b**3*x)**(1/3)), x) == -1/2*log(x)/a + 3/2*log(a-(a**3 + b**3*x)**(1/3))/a + arctan((a + 2*(a**3 + b**3*x)**(1/3))/(a*sqrt(3)))*sqrt(3)/a +assert rubi_integrate(1/(x*(a**3-b**3*x)**(1/3)), x) == -1/2*log(x)/a + 3/2*log(a-(a**3-b**3*x)**(1/3))/a + arctan((a + 2*(a**3-b**3*x)**(1/3))/(a*sqrt(3)))*sqrt(3)/a +assert rubi_integrate(1/(x*(-a**3 + b**3*x)**(1/3)), x) == 1/2*log(x)/a-3/2*log(a + (-a**3 + b**3*x)**(1/3))/a-arctan((a-2*(-a**3 + b**3*x)**(1/3))/(a*sqrt(3)))*sqrt(3)/a +assert rubi_integrate(1/(x*(-a**3-b**3*x)**(1/3)), x) == 1/2*log(x)/a-3/2*log(a + (-a**3-b**3*x)**(1/3))/a-arctan((a-2*(-a**3-b**3*x)**(1/3))/(a*sqrt(3)))*sqrt(3)/a +assert rubi_integrate(1/(x*(a**3 + b**3*x)**(2/3)), x) == -1/2*log(x)/a**2 + 3/2*log(a-(a**3 + b**3*x)**(1/3))/a**2-arctan((a + 2*(a**3 + b**3*x)**(1/3))/(a*sqrt(3)))*sqrt(3)/a**2 +assert rubi_integrate(1/(x*(a**3-b**3*x)**(2/3)), x) == -1/2*log(x)/a**2 + 3/2*log(a-(a**3-b**3*x)**(1/3))/a**2-arctan((a + 2*(a**3-b**3*x)**(1/3))/(a*sqrt(3)))*sqrt(3)/a**2 +assert rubi_integrate(1/(x*(-a**3 + b**3*x)**(2/3)), x) == -1/2*log(x)/a**2 + 3/2*log(a + (-a**3 + b**3*x)**(1/3))/a**2-arctan((a-2*(-a**3 + b**3*x)**(1/3))/(a*sqrt(3)))*sqrt(3)/a**2 +assert rubi_integrate(1/(x*(-a**3-b**3*x)**(2/3)), x) == -1/2*log(x)/a**2 + 3/2*log(a + (-a**3-b**3*x)**(1/3))/a**2-arctan((a-2*(-a**3-b**3*x)**(1/3))/(a*sqrt(3)))*sqrt(3)/a**2 + +# Integrands of the form (c x)**(m/2) (a + b x)**n + +# n>0 +assert rubi_integrate(x**m*(a + b*x), x) == a*x**(1 + m)/(1 + m) + b*x**(2 + m)/(2 + m) +assert rubi_integrate(x**(5/2)*(a + b*x), x) == 2/7*a*x**(7/2) + 2/9*b*x**(9/2) +assert rubi_integrate(x**(3/2)*(a + b*x), x) == 2/5*a*x**(5/2) + 2/7*b*x**(7/2) +assert rubi_integrate((a + b*x)*sqrt(x), x) == 2/3*a*x**(3/2) + 2/5*b*x**(5/2) +assert rubi_integrate((a + b*x)/sqrt(x), x) == 2/3*b*x**(3/2) + 2*a*sqrt(x) +assert rubi_integrate((a + b*x)/x**(3/2), x) == -2*a/sqrt(x) + 2*b*sqrt(x) +assert rubi_integrate((a + b*x)/x**(5/2), x) == -2/3*a/x**(3/2)-2*b/sqrt(x) +assert rubi_integrate(x**m*(a + b*x)**2, x) == a**2*x**(1 + m)/(1 + m) + 2*a*b*x**(2 + m)/(2 + m) + b**2*x**(3 + m)/(3 + m) +assert rubi_integrate(x**(5/2)*(a + b*x)**2, x) == 2/7*a**2*x**(7/2) + 4/9*a*b*x**(9/2) + 2/11*b**2*x**(11/2) +assert rubi_integrate(x**(3/2)*(a + b*x)**2, x) == 2/5*a**2*x**(5/2) + 4/7*a*b*x**(7/2) + 2/9*b**2*x**(9/2) +assert rubi_integrate((a + b*x)**2*sqrt(x), x) == 2/3*a**2*x**(3/2) + 4/5*a*b*x**(5/2) + 2/7*b**2*x**(7/2) +assert rubi_integrate((a + b*x)**2/sqrt(x), x) == 4/3*a*b*x**(3/2) + 2/5*b**2*x**(5/2) + 2*a**2*sqrt(x) +assert rubi_integrate((a + b*x)**2/x**(3/2), x) == 2/3*b**2*x**(3/2)-2*a**2/sqrt(x) + 4*a*b*sqrt(x) +assert rubi_integrate((a + b*x)**2/x**(5/2), x) == -2/3*a**2/x**(3/2)-4*a*b/sqrt(x) + 2*b**2*sqrt(x) +assert rubi_integrate(x**m*(a + b*x)**3, x) == a**3*x**(1 + m)/(1 + m) + 3*a**2*b*x**(2 + m)/(2 + m) + 3*a*b**2*x**(3 + m)/(3 + m) + b**3*x**(4 + m)/(4 + m) +assert rubi_integrate(x**(5/2)*(a + b*x)**3, x) == 2/7*a**3*x**(7/2) + 2/3*a**2*b*x**(9/2) + 6/11*a*b**2*x**(11/2) + 2/13*b**3*x**(13/2) +assert rubi_integrate(x**(3/2)*(a + b*x)**3, x) == 2/5*a**3*x**(5/2) + 6/7*a**2*b*x**(7/2) + 2/3*a*b**2*x**(9/2) + 2/11*b**3*x**(11/2) +assert rubi_integrate((a + b*x)**3*sqrt(x), x) == 2/3*a**3*x**(3/2) + 6/5*a**2*b*x**(5/2) + 6/7*a*b**2*x**(7/2) + 2/9*b**3*x**(9/2) +assert rubi_integrate((a + b*x)**3/sqrt(x), x) == 2*a**2*b*x**(3/2) + 6/5*a*b**2*x**(5/2) + 2/7*b**3*x**(7/2) + 2*a**3*sqrt(x) +assert rubi_integrate((a + b*x)**3/x**(3/2), x) == 2*a*b**2*x**(3/2) + 2/5*b**3*x**(5/2)-2*a**3/sqrt(x) + 6*a**2*b*sqrt(x) +assert rubi_integrate((a + b*x)**3/x**(5/2), x) == -2/3*a**3/x**(3/2) + 2/3*b**3*x**(3/2)-6*a**2*b/sqrt(x) + 6*a*b**2*sqrt(x) + +# n<0 +assert rubi_integrate(x**(5/2)/(a + b*x), x) == -2/3*a*x**(3/2)/b**2 + 2/5*x**(5/2)/b-2*a**(5/2)*arctan(sqrt(b)*sqrt(x)/sqrt(a))/b**(7/2) + 2*a**2*sqrt(x)/b**3 +assert rubi_integrate(x**(3/2)/(a + b*x), x) == 2/3*x**(3/2)/b + 2*a**(3/2)*arctan(sqrt(b)*sqrt(x)/sqrt(a))/b**(5/2)-2*a*sqrt(x)/b**2 +assert rubi_integrate(sqrt(x)/(a + b*x), x) == -2*arctan(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(a)/b**(3/2) + 2*sqrt(x)/b +assert rubi_integrate(1/((a + b*x)*sqrt(x)), x) == 2*arctan(sqrt(b)*sqrt(x)/sqrt(a))/(sqrt(a)*sqrt(b)) +assert rubi_integrate(1/(x**(3/2)*(a + b*x)), x) == -2*arctan(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(b)/a**(3/2) + (-2)/(a*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*(a + b*x)), x) == (-2/3)/(a*x**(3/2)) + 2*b**(3/2)*arctan(sqrt(b)*sqrt(x)/sqrt(a))/a**(5/2) + 2*b/(a**2*sqrt(x)) +assert rubi_integrate(1/(x**(7/2)*(a + b*x)), x) == (-2/5)/(a*x**(5/2)) + 2/3*b/(a**2*x**(3/2))-2*b**(5/2)*arctan(sqrt(b)*sqrt(x)/sqrt(a))/a**(7/2)-2*b**2/(a**3*sqrt(x)) +assert rubi_integrate(x**(5/2)/(a + b*x)**2, x) == 5/3*x**(3/2)/b**2-x**(5/2)/(b*(a + b*x)) + 5*a**(3/2)*arctan(sqrt(b)*sqrt(x)/sqrt(a))/b**(7/2)-5*a*sqrt(x)/b**3 +assert rubi_integrate(x**(3/2)/(a + b*x)**2, x) == -x**(3/2)/(b*(a + b*x))-3*arctan(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(a)/b**(5/2) + 3*sqrt(x)/b**2 +assert rubi_integrate(sqrt(x)/(a + b*x)**2, x) == arctan(sqrt(b)*sqrt(x)/sqrt(a))/(b**(3/2)*sqrt(a))-sqrt(x)/(b*(a + b*x)) +assert rubi_integrate(1/((a + b*x)**2*sqrt(x)), x) == arctan(sqrt(b)*sqrt(x)/sqrt(a))/(a**(3/2)*sqrt(b)) + sqrt(x)/(a*(a + b*x)) +assert rubi_integrate(1/(x**(3/2)*(a + b*x)**2), x) == -3*arctan(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(b)/a**(5/2) + (-3)/(a**2*sqrt(x)) + 1/(a*(a + b*x)*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*(a + b*x)**2), x) == (-5/3)/(a**2*x**(3/2)) + 1/(a*x**(3/2)*(a + b*x)) + 5*b**(3/2)*arctan(sqrt(b)*sqrt(x)/sqrt(a))/a**(7/2) + 5*b/(a**3*sqrt(x)) +assert rubi_integrate(x**(7/2)/(a + b*x)**3, x) == 35/12*x**(3/2)/b**3-1/2*x**(7/2)/(b*(a + b*x)**2)-7/4*x**(5/2)/(b**2*(a + b*x)) + 35/4*a**(3/2)*arctan(sqrt(b)*sqrt(x)/sqrt(a))/b**(9/2)-35/4*a*sqrt(x)/b**4 +assert rubi_integrate(x**(5/2)/(a + b*x)**3, x) == -1/2*x**(5/2)/(b*(a + b*x)**2)-5/4*x**(3/2)/(b**2*(a + b*x))-15/4*arctan(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(a)/b**(7/2) + 15/4*sqrt(x)/b**3 +assert rubi_integrate(x**(3/2)/(a + b*x)**3, x) == -1/2*x**(3/2)/(b*(a + b*x)**2) + 3/4*arctan(sqrt(b)*sqrt(x)/sqrt(a))/(b**(5/2)*sqrt(a))-3/4*sqrt(x)/(b**2*(a + b*x)) +assert rubi_integrate(sqrt(x)/(a + b*x)**3, x) == 1/4*arctan(sqrt(b)*sqrt(x)/sqrt(a))/(a**(3/2)*b**(3/2))-1/2*sqrt(x)/(b*(a + b*x)**2) + 1/4*sqrt(x)/(a*b*(a + b*x)) +assert rubi_integrate(1/((a + b*x)**3*sqrt(x)), x) == 3/4*arctan(sqrt(b)*sqrt(x)/sqrt(a))/(a**(5/2)*sqrt(b)) + 1/2*sqrt(x)/(a*(a + b*x)**2) + 3/4*sqrt(x)/(a**2*(a + b*x)) +assert rubi_integrate(1/(x**(3/2)*(a + b*x)**3), x) == -15/4*arctan(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(b)/a**(7/2) + (-15/4)/(a**3*sqrt(x)) + 1/2/(a*(a + b*x)**2*sqrt(x)) + 5/4/(a**2*(a + b*x)*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*(a + b*x)**3), x) == (-35/12)/(a**3*x**(3/2)) + 1/2/(a*x**(3/2)*(a + b*x)**2) + 7/4/(a**2*x**(3/2)*(a + b*x)) + 35/4*b**(3/2)*arctan(sqrt(b)*sqrt(x)/sqrt(a))/a**(9/2) + 35/4*b/(a**4*sqrt(x)) +assert rubi_integrate(x**(5/2)/(-a + b*x), x) == 2/3*a*x**(3/2)/b**2 + 2/5*x**(5/2)/b-2*a**(5/2)*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/b**(7/2) + 2*a**2*sqrt(x)/b**3 +assert rubi_integrate(x**(3/2)/(-a + b*x), x) == 2/3*x**(3/2)/b-2*a**(3/2)*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/b**(5/2) + 2*a*sqrt(x)/b**2 +assert rubi_integrate(sqrt(x)/(-a + b*x), x) == -2*arctanh(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(a)/b**(3/2) + 2*sqrt(x)/b +assert rubi_integrate(1/((-a + b*x)*sqrt(x)), x) == -2*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/(sqrt(a)*sqrt(b)) +assert rubi_integrate(1/(x**(3/2)*(-a + b*x)), x) == -2*arctanh(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(b)/a**(3/2) + 2/(a*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*(-a + b*x)), x) == 2/3/(a*x**(3/2))-2*b**(3/2)*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/a**(5/2) + 2*b/(a**2*sqrt(x)) +assert rubi_integrate(1/(x**(7/2)*(-a + b*x)), x) == 2/5/(a*x**(5/2)) + 2/3*b/(a**2*x**(3/2))-2*b**(5/2)*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/a**(7/2) + 2*b**2/(a**3*sqrt(x)) +assert rubi_integrate(x**(5/2)/(-a + b*x)**2, x) == 5/3*x**(3/2)/b**2 + x**(5/2)/(b*(a-b*x))-5*a**(3/2)*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/b**(7/2) + 5*a*sqrt(x)/b**3 +assert rubi_integrate(x**(3/2)/(-a + b*x)**2, x) == x**(3/2)/(b*(a-b*x))-3*arctanh(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(a)/b**(5/2) + 3*sqrt(x)/b**2 +assert rubi_integrate(sqrt(x)/(-a + b*x)**2, x) == -arctanh(sqrt(b)*sqrt(x)/sqrt(a))/(b**(3/2)*sqrt(a)) + sqrt(x)/(b*(a-b*x)) +assert rubi_integrate(1/((-a + b*x)**2*sqrt(x)), x) == arctanh(sqrt(b)*sqrt(x)/sqrt(a))/(a**(3/2)*sqrt(b)) + sqrt(x)/(a*(a-b*x)) +assert rubi_integrate(1/(x**(3/2)*(-a + b*x)**2), x) == 3*arctanh(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(b)/a**(5/2) + (-3)/(a**2*sqrt(x)) + 1/(a*(a-b*x)*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*(-a + b*x)**2), x) == (-5/3)/(a**2*x**(3/2)) + 1/(a*x**(3/2)*(a-b*x)) + 5*b**(3/2)*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/a**(7/2)-5*b/(a**3*sqrt(x)) +assert rubi_integrate(x**(7/2)/(-a + b*x)**3, x) == 35/12*x**(3/2)/b**3-1/2*x**(7/2)/(b*(a-b*x)**2) + 7/4*x**(5/2)/(b**2*(a-b*x))-35/4*a**(3/2)*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/b**(9/2) + 35/4*a*sqrt(x)/b**4 +assert rubi_integrate(x**(5/2)/(-a + b*x)**3, x) == -1/2*x**(5/2)/(b*(a-b*x)**2) + 5/4*x**(3/2)/(b**2*(a-b*x))-15/4*arctanh(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(a)/b**(7/2) + 15/4*sqrt(x)/b**3 +assert rubi_integrate(x**(3/2)/(-a + b*x)**3, x) == -1/2*x**(3/2)/(b*(a-b*x)**2)-3/4*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/(b**(5/2)*sqrt(a)) + 3/4*sqrt(x)/(b**2*(a-b*x)) +assert rubi_integrate(sqrt(x)/(-a + b*x)**3, x) == 1/4*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/(a**(3/2)*b**(3/2))-1/2*sqrt(x)/(b*(a-b*x)**2) + 1/4*sqrt(x)/(a*b*(a-b*x)) +assert rubi_integrate(1/((-a + b*x)**3*sqrt(x)), x) == -3/4*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/(a**(5/2)*sqrt(b))-1/2*sqrt(x)/(a*(a-b*x)**2)-3/4*sqrt(x)/(a**2*(a-b*x)) +assert rubi_integrate(1/(x**(3/2)*(-a + b*x)**3), x) == -15/4*arctanh(sqrt(b)*sqrt(x)/sqrt(a))*sqrt(b)/a**(7/2) + 15/4/(a**3*sqrt(x)) + (-1/2)/(a*(a-b*x)**2*sqrt(x)) + (-5/4)/(a**2*(a-b*x)*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*(-a + b*x)**3), x) == 35/12/(a**3*x**(3/2)) + (-1/2)/(a*x**(3/2)*(a-b*x)**2) + (-7/4)/(a**2*x**(3/2)*(a-b*x))-35/4*b**(3/2)*arctanh(sqrt(b)*sqrt(x)/sqrt(a))/a**(9/2) + 35/4*b/(a**4*sqrt(x)) + +# Integrands of the form (c x)**(m/2) (a + b x)**(n/2 + +# n>0 +assert rubi_integrate(x**(5/2)*sqrt(a + b*x), x) == -5/64*a**4*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(7/2)-5/96*a**2*x**(3/2)*sqrt(a + b*x)/b**2 + 1/24*a*x**(5/2)*sqrt(a + b*x)/b + 1/4*x**(7/2)*sqrt(a + b*x) + 5/64*a**3*sqrt(x)*sqrt(a + b*x)/b**3 +assert rubi_integrate(x**(3/2)*sqrt(a + b*x), x) == 1/8*a**3*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(5/2) + 1/12*a*x**(3/2)*sqrt(a + b*x)/b + 1/3*x**(5/2)*sqrt(a + b*x)-1/8*a**2*sqrt(x)*sqrt(a + b*x)/b**2 +assert rubi_integrate(sqrt(x)*sqrt(a + b*x), x) == -1/4*a**2*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(3/2) + 1/2*x**(3/2)*sqrt(a + b*x) + 1/4*a*sqrt(x)*sqrt(a + b*x)/b +assert rubi_integrate(sqrt(a + b*x)/sqrt(x), x) == a*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/sqrt(b) + sqrt(x)*sqrt(a + b*x) +assert rubi_integrate(sqrt(a + b*x)/x**(3/2), x) == 2*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))*sqrt(b)-2*sqrt(a + b*x)/sqrt(x) +assert rubi_integrate(sqrt(a + b*x)/x**(5/2), x) == -2/3*(a + b*x)**(3/2)/(a*x**(3/2)) +assert rubi_integrate(sqrt(a + b*x)/x**(7/2), x) == -2/5*(a + b*x)**(3/2)/(a*x**(5/2)) + 4/15*b*(a + b*x)**(3/2)/(a**2*x**(3/2)) +assert rubi_integrate(sqrt(a + b*x)/x**(9/2), x) == -2/7*(a + b*x)**(3/2)/(a*x**(7/2)) + 8/35*b*(a + b*x)**(3/2)/(a**2*x**(5/2))-16/105*b**2*(a + b*x)**(3/2)/(a**3*x**(3/2)) +assert rubi_integrate(x**(5/2)*sqrt(a-b*x), x) == 5/64*a**4*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(7/2)-5/96*a**2*x**(3/2)*sqrt(a-b*x)/b**2-1/24*a*x**(5/2)*sqrt(a-b*x)/b + 1/4*x**(7/2)*sqrt(a-b*x)-5/64*a**3*sqrt(x)*sqrt(a-b*x)/b**3 +assert rubi_integrate(x**(3/2)*sqrt(a-b*x), x) == 1/8*a**3*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(5/2)-1/12*a*x**(3/2)*sqrt(a-b*x)/b + 1/3*x**(5/2)*sqrt(a-b*x)-1/8*a**2*sqrt(x)*sqrt(a-b*x)/b**2 +assert rubi_integrate(sqrt(x)*sqrt(a-b*x), x) == 1/4*a**2*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(3/2) + 1/2*x**(3/2)*sqrt(a-b*x)-1/4*a*sqrt(x)*sqrt(a-b*x)/b +assert rubi_integrate(sqrt(a-b*x)/sqrt(x), x) == a*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/sqrt(b) + sqrt(x)*sqrt(a-b*x) +assert rubi_integrate(sqrt(a-b*x)/x**(3/2), x) == -2*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))*sqrt(b)-2*sqrt(a-b*x)/sqrt(x) +assert rubi_integrate(sqrt(a-b*x)/x**(5/2), x) == -2/3*(a-b*x)**(3/2)/(a*x**(3/2)) +assert rubi_integrate(sqrt(a-b*x)/x**(7/2), x) == -2/5*(a-b*x)**(3/2)/(a*x**(5/2))-4/15*b*(a-b*x)**(3/2)/(a**2*x**(3/2)) +assert rubi_integrate(sqrt(a-b*x)/x**(9/2), x) == -2/7*(a-b*x)**(3/2)/(a*x**(7/2))-8/35*b*(a-b*x)**(3/2)/(a**2*x**(5/2))-16/105*b**2*(a-b*x)**(3/2)/(a**3*x**(3/2)) +assert rubi_integrate(x**(5/2)*sqrt(2 + b*x), x) == -5/4*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2)-5/24*x**(3/2)*sqrt(2 + b*x)/b**2 + 1/12*x**(5/2)*sqrt(2 + b*x)/b + 1/4*x**(7/2)*sqrt(2 + b*x) + 5/8*sqrt(x)*sqrt(2 + b*x)/b**3 +assert rubi_integrate(x**(3/2)*sqrt(2 + b*x), x) == arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2) + 1/6*x**(3/2)*sqrt(2 + b*x)/b + 1/3*x**(5/2)*sqrt(2 + b*x)-1/2*sqrt(x)*sqrt(2 + b*x)/b**2 +assert rubi_integrate(sqrt(x)*sqrt(2 + b*x), x) == -arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(3/2) + 1/2*x**(3/2)*sqrt(2 + b*x) + 1/2*sqrt(x)*sqrt(2 + b*x)/b +assert rubi_integrate(sqrt(2 + b*x)/sqrt(x), x) == 2*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/sqrt(b) + sqrt(x)*sqrt(2 + b*x) +assert rubi_integrate(sqrt(2 + b*x)/x**(3/2), x) == 2*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))*sqrt(b)-2*sqrt(2 + b*x)/sqrt(x) +assert rubi_integrate(sqrt(2 + b*x)/x**(5/2), x) == -1/3*(2 + b*x)**(3/2)/x**(3/2) +assert rubi_integrate(sqrt(2 + b*x)/x**(7/2), x) == -1/5*(2 + b*x)**(3/2)/x**(5/2) + 1/15*b*(2 + b*x)**(3/2)/x**(3/2) +assert rubi_integrate(sqrt(2 + b*x)/x**(9/2), x) == -1/7*(2 + b*x)**(3/2)/x**(7/2) + 2/35*b*(2 + b*x)**(3/2)/x**(5/2)-2/105*b**2*(2 + b*x)**(3/2)/x**(3/2) +assert rubi_integrate(x**(5/2)*sqrt(2-b*x), x) == 5/4*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2)-5/24*x**(3/2)*sqrt(2-b*x)/b**2-1/12*x**(5/2)*sqrt(2-b*x)/b + 1/4*x**(7/2)*sqrt(2-b*x)-5/8*sqrt(x)*sqrt(2-b*x)/b**3 +assert rubi_integrate(x**(3/2)*sqrt(2-b*x), x) == arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2)-1/6*x**(3/2)*sqrt(2-b*x)/b + 1/3*x**(5/2)*sqrt(2-b*x)-1/2*sqrt(x)*sqrt(2-b*x)/b**2 +assert rubi_integrate(sqrt(x)*sqrt(2-b*x), x) == arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(3/2) + 1/2*x**(3/2)*sqrt(2-b*x)-1/2*sqrt(x)*sqrt(2-b*x)/b +assert rubi_integrate(sqrt(2-b*x)/sqrt(x), x) == 2*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/sqrt(b) + sqrt(x)*sqrt(2-b*x) +assert rubi_integrate(sqrt(2-b*x)/x**(3/2), x) == -2*arcsin(sqrt(b)*sqrt(x)/sqrt(2))*sqrt(b)-2*sqrt(2-b*x)/sqrt(x) +assert rubi_integrate(sqrt(2-b*x)/x**(5/2), x) == -1/3*(2-b*x)**(3/2)/x**(3/2) +assert rubi_integrate(sqrt(2-b*x)/x**(7/2), x) == -1/5*(2-b*x)**(3/2)/x**(5/2)-1/15*b*(2-b*x)**(3/2)/x**(3/2) +assert rubi_integrate(sqrt(2-b*x)/x**(9/2), x) == -1/7*(2-b*x)**(3/2)/x**(7/2)-2/35*b*(2-b*x)**(3/2)/x**(5/2)-2/105*b**2*(2-b*x)**(3/2)/x**(3/2) +assert rubi_integrate(x**(5/2)*(a + b*x)**(3/2), x) == 1/5*x**(7/2)*(a + b*x)**(3/2)-3/128*a**5*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(7/2)-1/64*a**3*x**(3/2)*sqrt(a + b*x)/b**2 + 1/80*a**2*x**(5/2)*sqrt(a + b*x)/b + 3/40*a*x**(7/2)*sqrt(a + b*x) + 3/128*a**4*sqrt(x)*sqrt(a + b*x)/b**3 +assert rubi_integrate(x**(3/2)*(a + b*x)**(3/2), x) == 1/4*x**(5/2)*(a + b*x)**(3/2) + 3/64*a**4*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(5/2) + 1/32*a**2*x**(3/2)*sqrt(a + b*x)/b + 1/8*a*x**(5/2)*sqrt(a + b*x)-3/64*a**3*sqrt(x)*sqrt(a + b*x)/b**2 +assert rubi_integrate((a + b*x)**(3/2)*sqrt(x), x) == 1/3*x**(3/2)*(a + b*x)**(3/2)-1/8*a**3*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(3/2) + 1/4*a*x**(3/2)*sqrt(a + b*x) + 1/8*a**2*sqrt(x)*sqrt(a + b*x)/b +assert rubi_integrate((a + b*x)**(3/2)/sqrt(x), x) == 3/4*a**2*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/sqrt(b) + 1/2*(a + b*x)**(3/2)*sqrt(x) + 3/4*a*sqrt(x)*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(3/2)/x**(3/2), x) == 3*a*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))*sqrt(b)-2*(a + b*x)**(3/2)/sqrt(x) + 3*b*sqrt(x)*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(3/2)/x**(5/2), x) == -2/3*(a + b*x)**(3/2)/x**(3/2) + 2*b**(3/2)*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))-2*b*sqrt(a + b*x)/sqrt(x) +assert rubi_integrate(x**(5/2)*(a-b*x)**(3/2), x) == 1/5*x**(7/2)*(a-b*x)**(3/2) + 3/128*a**5*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(7/2)-1/64*a**3*x**(3/2)*sqrt(a-b*x)/b**2-1/80*a**2*x**(5/2)*sqrt(a-b*x)/b + 3/40*a*x**(7/2)*sqrt(a-b*x)-3/128*a**4*sqrt(x)*sqrt(a-b*x)/b**3 +assert rubi_integrate(x**(3/2)*(a-b*x)**(3/2), x) == 1/4*x**(5/2)*(a-b*x)**(3/2) + 3/64*a**4*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(5/2)-1/32*a**2*x**(3/2)*sqrt(a-b*x)/b + 1/8*a*x**(5/2)*sqrt(a-b*x)-3/64*a**3*sqrt(x)*sqrt(a-b*x)/b**2 +assert rubi_integrate((a-b*x)**(3/2)*sqrt(x), x) == 1/3*x**(3/2)*(a-b*x)**(3/2) + 1/8*a**3*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(3/2) + 1/4*a*x**(3/2)*sqrt(a-b*x)-1/8*a**2*sqrt(x)*sqrt(a-b*x)/b +assert rubi_integrate((a-b*x)**(3/2)/sqrt(x), x) == 3/4*a**2*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/sqrt(b) + 1/2*(a-b*x)**(3/2)*sqrt(x) + 3/4*a*sqrt(x)*sqrt(a-b*x) +assert rubi_integrate((a-b*x)**(3/2)/x**(3/2), x) == -3*a*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))*sqrt(b)-2*(a-b*x)**(3/2)/sqrt(x)-3*b*sqrt(x)*sqrt(a-b*x) +assert rubi_integrate((a-b*x)**(3/2)/x**(5/2), x) == -2/3*(a-b*x)**(3/2)/x**(3/2) + 2*b**(3/2)*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x)) + 2*b*sqrt(a-b*x)/sqrt(x) +assert rubi_integrate(x**(5/2)*(2 + b*x)**(3/2), x) == 1/5*x**(7/2)*(2 + b*x)**(3/2)-3/4*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2)-1/8*x**(3/2)*sqrt(2 + b*x)/b**2 + 1/20*x**(5/2)*sqrt(2 + b*x)/b + 3/20*x**(7/2)*sqrt(2 + b*x) + 3/8*sqrt(x)*sqrt(2 + b*x)/b**3 +assert rubi_integrate(x**(3/2)*(2 + b*x)**(3/2), x) == 1/4*x**(5/2)*(2 + b*x)**(3/2) + 3/4*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2) + 1/8*x**(3/2)*sqrt(2 + b*x)/b + 1/4*x**(5/2)*sqrt(2 + b*x)-3/8*sqrt(x)*sqrt(2 + b*x)/b**2 +assert rubi_integrate((2 + b*x)**(3/2)*sqrt(x), x) == 1/3*x**(3/2)*(2 + b*x)**(3/2)-arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(3/2) + 1/2*x**(3/2)*sqrt(2 + b*x) + 1/2*sqrt(x)*sqrt(2 + b*x)/b +assert rubi_integrate((2 + b*x)**(3/2)/sqrt(x), x) == 3*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/sqrt(b) + 1/2*(2 + b*x)**(3/2)*sqrt(x) + 3/2*sqrt(x)*sqrt(2 + b*x) +assert rubi_integrate((2 + b*x)**(3/2)/x**(3/2), x) == 6*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))*sqrt(b)-2*(2 + b*x)**(3/2)/sqrt(x) + 3*b*sqrt(x)*sqrt(2 + b*x) +assert rubi_integrate((2 + b*x)**(3/2)/x**(5/2), x) == -2/3*(2 + b*x)**(3/2)/x**(3/2) + 2*b**(3/2)*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))-2*b*sqrt(2 + b*x)/sqrt(x) +assert rubi_integrate(x**(5/2)*(2-b*x)**(3/2), x) == 1/5*x**(7/2)*(2-b*x)**(3/2) + 3/4*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2)-1/8*x**(3/2)*sqrt(2-b*x)/b**2-1/20*x**(5/2)*sqrt(2-b*x)/b + 3/20*x**(7/2)*sqrt(2-b*x)-3/8*sqrt(x)*sqrt(2-b*x)/b**3 +assert rubi_integrate(x**(3/2)*(2-b*x)**(3/2), x) == 1/4*x**(5/2)*(2-b*x)**(3/2) + 3/4*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2)-1/8*x**(3/2)*sqrt(2-b*x)/b + 1/4*x**(5/2)*sqrt(2-b*x)-3/8*sqrt(x)*sqrt(2-b*x)/b**2 +assert rubi_integrate((2-b*x)**(3/2)*sqrt(x), x) == 1/3*x**(3/2)*(2-b*x)**(3/2) + arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(3/2) + 1/2*x**(3/2)*sqrt(2-b*x)-1/2*sqrt(x)*sqrt(2-b*x)/b +assert rubi_integrate((2-b*x)**(3/2)/sqrt(x), x) == 3*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/sqrt(b) + 1/2*(2-b*x)**(3/2)*sqrt(x) + 3/2*sqrt(x)*sqrt(2-b*x) +assert rubi_integrate((2-b*x)**(3/2)/x**(3/2), x) == -6*arcsin(sqrt(b)*sqrt(x)/sqrt(2))*sqrt(b)-2*(2-b*x)**(3/2)/sqrt(x)-3*b*sqrt(x)*sqrt(2-b*x) +assert rubi_integrate((2-b*x)**(3/2)/x**(5/2), x) == -2/3*(2-b*x)**(3/2)/x**(3/2) + 2*b**(3/2)*arcsin(sqrt(b)*sqrt(x)/sqrt(2)) + 2*b*sqrt(2-b*x)/sqrt(x) +assert rubi_integrate(x**(5/2)*(a + b*x)**(5/2), x) == 1/12*a*x**(7/2)*(a + b*x)**(3/2) + 1/6*x**(7/2)*(a + b*x)**(5/2)-5/512*a**6*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(7/2)-5/768*a**4*x**(3/2)*sqrt(a + b*x)/b**2 + 1/192*a**3*x**(5/2)*sqrt(a + b*x)/b + 1/32*a**2*x**(7/2)*sqrt(a + b*x) + 5/512*a**5*sqrt(x)*sqrt(a + b*x)/b**3 +assert rubi_integrate(x**(3/2)*(a + b*x)**(5/2), x) == 1/8*a*x**(5/2)*(a + b*x)**(3/2) + 1/5*x**(5/2)*(a + b*x)**(5/2) + 3/128*a**5*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(5/2) + 1/64*a**3*x**(3/2)*sqrt(a + b*x)/b + 1/16*a**2*x**(5/2)*sqrt(a + b*x)-3/128*a**4*sqrt(x)*sqrt(a + b*x)/b**2 +assert rubi_integrate((a + b*x)**(5/2)*sqrt(x), x) == 5/24*a*x**(3/2)*(a + b*x)**(3/2) + 1/4*x**(3/2)*(a + b*x)**(5/2)-5/64*a**4*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(3/2) + 5/32*a**2*x**(3/2)*sqrt(a + b*x) + 5/64*a**3*sqrt(x)*sqrt(a + b*x)/b +assert rubi_integrate((a + b*x)**(5/2)/sqrt(x), x) == 5/8*a**3*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/sqrt(b) + 5/12*a*(a + b*x)**(3/2)*sqrt(x) + 1/3*(a + b*x)**(5/2)*sqrt(x) + 5/8*a**2*sqrt(x)*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(5/2)/x**(3/2), x) == 15/4*a**2*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))*sqrt(b)-2*(a + b*x)**(5/2)/sqrt(x) + 5/2*b*(a + b*x)**(3/2)*sqrt(x) + 15/4*a*b*sqrt(x)*sqrt(a + b*x) +assert rubi_integrate((a + b*x)**(5/2)/x**(5/2), x) == -2/3*(a + b*x)**(5/2)/x**(3/2) + 5*a*b**(3/2)*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))-10/3*b*(a + b*x)**(3/2)/sqrt(x) + 5*b**2*sqrt(x)*sqrt(a + b*x) +assert rubi_integrate(x**(5/2)*(a-b*x)**(5/2), x) == 1/12*a*x**(7/2)*(a-b*x)**(3/2) + 1/6*x**(7/2)*(a-b*x)**(5/2) + 5/512*a**6*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(7/2)-5/768*a**4*x**(3/2)*sqrt(a-b*x)/b**2-1/192*a**3*x**(5/2)*sqrt(a-b*x)/b + 1/32*a**2*x**(7/2)*sqrt(a-b*x)-5/512*a**5*sqrt(x)*sqrt(a-b*x)/b**3 +assert rubi_integrate(x**(3/2)*(a-b*x)**(5/2), x) == 1/8*a*x**(5/2)*(a-b*x)**(3/2) + 1/5*x**(5/2)*(a-b*x)**(5/2) + 3/128*a**5*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(5/2)-1/64*a**3*x**(3/2)*sqrt(a-b*x)/b + 1/16*a**2*x**(5/2)*sqrt(a-b*x)-3/128*a**4*sqrt(x)*sqrt(a-b*x)/b**2 +assert rubi_integrate((a-b*x)**(5/2)*sqrt(x), x) == 5/24*a*x**(3/2)*(a-b*x)**(3/2) + 1/4*x**(3/2)*(a-b*x)**(5/2) + 5/64*a**4*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(3/2) + 5/32*a**2*x**(3/2)*sqrt(a-b*x)-5/64*a**3*sqrt(x)*sqrt(a-b*x)/b +assert rubi_integrate((a-b*x)**(5/2)/sqrt(x), x) == 5/8*a**3*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/sqrt(b) + 5/12*a*(a-b*x)**(3/2)*sqrt(x) + 1/3*(a-b*x)**(5/2)*sqrt(x) + 5/8*a**2*sqrt(x)*sqrt(a-b*x) +assert rubi_integrate((a-b*x)**(5/2)/x**(3/2), x) == -15/4*a**2*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))*sqrt(b)-2*(a-b*x)**(5/2)/sqrt(x)-5/2*b*(a-b*x)**(3/2)*sqrt(x)-15/4*a*b*sqrt(x)*sqrt(a-b*x) +assert rubi_integrate((a-b*x)**(5/2)/x**(5/2), x) == -2/3*(a-b*x)**(5/2)/x**(3/2) + 5*a*b**(3/2)*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x)) + 10/3*b*(a-b*x)**(3/2)/sqrt(x) + 5*b**2*sqrt(x)*sqrt(a-b*x) +assert rubi_integrate(x**(5/2)*(2 + b*x)**(5/2), x) == 1/6*x**(7/2)*(2 + b*x)**(3/2) + 1/6*x**(7/2)*(2 + b*x)**(5/2)-5/8*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2)-5/48*x**(3/2)*sqrt(2 + b*x)/b**2 + 1/24*x**(5/2)*sqrt(2 + b*x)/b + 1/8*x**(7/2)*sqrt(2 + b*x) + 5/16*sqrt(x)*sqrt(2 + b*x)/b**3 +assert rubi_integrate(x**(3/2)*(2 + b*x)**(5/2), x) == 1/4*x**(5/2)*(2 + b*x)**(3/2) + 1/5*x**(5/2)*(2 + b*x)**(5/2) + 3/4*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2) + 1/8*x**(3/2)*sqrt(2 + b*x)/b + 1/4*x**(5/2)*sqrt(2 + b*x)-3/8*sqrt(x)*sqrt(2 + b*x)/b**2 +assert rubi_integrate((2 + b*x)**(5/2)*sqrt(x), x) == 5/12*x**(3/2)*(2 + b*x)**(3/2) + 1/4*x**(3/2)*(2 + b*x)**(5/2)-5/4*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(3/2) + 5/8*x**(3/2)*sqrt(2 + b*x) + 5/8*sqrt(x)*sqrt(2 + b*x)/b +assert rubi_integrate((2 + b*x)**(5/2)/sqrt(x), x) == 5*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/sqrt(b) + 5/6*(2 + b*x)**(3/2)*sqrt(x) + 1/3*(2 + b*x)**(5/2)*sqrt(x) + 5/2*sqrt(x)*sqrt(2 + b*x) +assert rubi_integrate((2 + b*x)**(5/2)/x**(3/2), x) == 15*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))*sqrt(b)-2*(2 + b*x)**(5/2)/sqrt(x) + 5/2*b*(2 + b*x)**(3/2)*sqrt(x) + 15/2*b*sqrt(x)*sqrt(2 + b*x) +assert rubi_integrate((2 + b*x)**(5/2)/x**(5/2), x) == -2/3*(2 + b*x)**(5/2)/x**(3/2) + 10*b**(3/2)*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))-10/3*b*(2 + b*x)**(3/2)/sqrt(x) + 5*b**2*sqrt(x)*sqrt(2 + b*x) +assert rubi_integrate(x**(5/2)*(2-b*x)**(5/2), x) == 1/6*x**(7/2)*(2-b*x)**(3/2) + 1/6*x**(7/2)*(2-b*x)**(5/2) + 5/8*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2)-5/48*x**(3/2)*sqrt(2-b*x)/b**2-1/24*x**(5/2)*sqrt(2-b*x)/b + 1/8*x**(7/2)*sqrt(2-b*x)-5/16*sqrt(x)*sqrt(2-b*x)/b**3 +assert rubi_integrate(x**(3/2)*(2-b*x)**(5/2), x) == 1/4*x**(5/2)*(2-b*x)**(3/2) + 1/5*x**(5/2)*(2-b*x)**(5/2) + 3/4*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2)-1/8*x**(3/2)*sqrt(2-b*x)/b + 1/4*x**(5/2)*sqrt(2-b*x)-3/8*sqrt(x)*sqrt(2-b*x)/b**2 +assert rubi_integrate((2-b*x)**(5/2)*sqrt(x), x) == 5/12*x**(3/2)*(2-b*x)**(3/2) + 1/4*x**(3/2)*(2-b*x)**(5/2) + 5/4*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(3/2) + 5/8*x**(3/2)*sqrt(2-b*x)-5/8*sqrt(x)*sqrt(2-b*x)/b +assert rubi_integrate((2-b*x)**(5/2)/sqrt(x), x) == 5*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/sqrt(b) + 5/6*(2-b*x)**(3/2)*sqrt(x) + 1/3*(2-b*x)**(5/2)*sqrt(x) + 5/2*sqrt(x)*sqrt(2-b*x) +assert rubi_integrate((2-b*x)**(5/2)/x**(3/2), x) == -15*arcsin(sqrt(b)*sqrt(x)/sqrt(2))*sqrt(b)-2*(2-b*x)**(5/2)/sqrt(x)-5/2*b*(2-b*x)**(3/2)*sqrt(x)-15/2*b*sqrt(x)*sqrt(2-b*x) +assert rubi_integrate((2-b*x)**(5/2)/x**(5/2), x) == -2/3*(2-b*x)**(5/2)/x**(3/2) + 10*b**(3/2)*arcsin(sqrt(b)*sqrt(x)/sqrt(2)) + 10/3*b*(2-b*x)**(3/2)/sqrt(x) + 5*b**2*sqrt(x)*sqrt(2-b*x) + +# n<0 +assert rubi_integrate(x**(5/2)/sqrt(a + b*x), x) == -5/8*a**3*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(7/2)-5/12*a*x**(3/2)*sqrt(a + b*x)/b**2 + 1/3*x**(5/2)*sqrt(a + b*x)/b + 5/8*a**2*sqrt(x)*sqrt(a + b*x)/b**3 +assert rubi_integrate(x**(3/2)/sqrt(a + b*x), x) == 3/4*a**2*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(5/2) + 1/2*x**(3/2)*sqrt(a + b*x)/b-3/4*a*sqrt(x)*sqrt(a + b*x)/b**2 +assert rubi_integrate(sqrt(x)/sqrt(a + b*x), x) == -a*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(3/2) + sqrt(x)*sqrt(a + b*x)/b +assert rubi_integrate(1/(sqrt(x)*sqrt(a + b*x)), x) == 2*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/sqrt(b) +assert rubi_integrate(1/(x**(3/2)*sqrt(a + b*x)), x) == -2*sqrt(a + b*x)/(a*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*sqrt(a + b*x)), x) == -2/3*sqrt(a + b*x)/(a*x**(3/2)) + 4/3*b*sqrt(a + b*x)/(a**2*sqrt(x)) +assert rubi_integrate(1/(x**(7/2)*sqrt(a + b*x)), x) == -2/5*sqrt(a + b*x)/(a*x**(5/2)) + 8/15*b*sqrt(a + b*x)/(a**2*x**(3/2))-16/15*b**2*sqrt(a + b*x)/(a**3*sqrt(x)) +assert rubi_integrate(1/(x**(9/2)*sqrt(a + b*x)), x) == -2/7*sqrt(a + b*x)/(a*x**(7/2)) + 12/35*b*sqrt(a + b*x)/(a**2*x**(5/2))-16/35*b**2*sqrt(a + b*x)/(a**3*x**(3/2)) + 32/35*b**3*sqrt(a + b*x)/(a**4*sqrt(x)) +assert rubi_integrate(x**(5/2)/(a + b*x)**(3/2), x) == 15/4*a**2*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(7/2)-2*x**(5/2)/(b*sqrt(a + b*x)) + 5/2*x**(3/2)*sqrt(a + b*x)/b**2-15/4*a*sqrt(x)*sqrt(a + b*x)/b**3 +assert rubi_integrate(x**(3/2)/(a + b*x)**(3/2), x) == -3*a*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(5/2)-2*x**(3/2)/(b*sqrt(a + b*x)) + 3*sqrt(x)*sqrt(a + b*x)/b**2 +assert rubi_integrate(sqrt(x)/(a + b*x)**(3/2), x) == 2*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(3/2)-2*sqrt(x)/(b*sqrt(a + b*x)) +assert rubi_integrate(1/((a + b*x)**(3/2)*sqrt(x)), x) == 2*sqrt(x)/(a*sqrt(a + b*x)) +assert rubi_integrate(1/(x**(3/2)*(a + b*x)**(3/2)), x) == 2/(a*sqrt(x)*sqrt(a + b*x))-4*sqrt(a + b*x)/(a**2*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*(a + b*x)**(3/2)), x) == 2/(a*x**(3/2)*sqrt(a + b*x))-8/3*sqrt(a + b*x)/(a**2*x**(3/2)) + 16/3*b*sqrt(a + b*x)/(a**3*sqrt(x)) +assert rubi_integrate(1/(x**(7/2)*(a + b*x)**(3/2)), x) == 2/(a*x**(5/2)*sqrt(a + b*x))-12/5*sqrt(a + b*x)/(a**2*x**(5/2)) + 16/5*b*sqrt(a + b*x)/(a**3*x**(3/2))-32/5*b**2*sqrt(a + b*x)/(a**4*sqrt(x)) +assert rubi_integrate(x**(5/2)/(a + b*x)**(5/2), x) == -2/3*x**(5/2)/(b*(a + b*x)**(3/2))-5*a*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(7/2)-10/3*x**(3/2)/(b**2*sqrt(a + b*x)) + 5*sqrt(x)*sqrt(a + b*x)/b**3 +assert rubi_integrate(x**(3/2)/(a + b*x)**(5/2), x) == -2/3*x**(3/2)/(b*(a + b*x)**(3/2)) + 2*arctanh(sqrt(b)*sqrt(x)/sqrt(a + b*x))/b**(5/2)-2*sqrt(x)/(b**2*sqrt(a + b*x)) +assert rubi_integrate(sqrt(x)/(a + b*x)**(5/2), x) == 2/3*x**(3/2)/(a*(a + b*x)**(3/2)) +assert rubi_integrate(1/((a + b*x)**(5/2)*sqrt(x)), x) == 2/3*sqrt(x)/(a*(a + b*x)**(3/2)) + 4/3*sqrt(x)/(a**2*sqrt(a + b*x)) +assert rubi_integrate(1/(x**(3/2)*(a + b*x)**(5/2)), x) == 2/3/(a*(a + b*x)**(3/2)*sqrt(x)) + 8/3/(a**2*sqrt(x)*sqrt(a + b*x))-16/3*sqrt(a + b*x)/(a**3*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*(a + b*x)**(5/2)), x) == 2/3/(a*x**(3/2)*(a + b*x)**(3/2)) + 4/(a**2*x**(3/2)*sqrt(a + b*x))-16/3*sqrt(a + b*x)/(a**3*x**(3/2)) + 32/3*b*sqrt(a + b*x)/(a**4*sqrt(x)) +assert rubi_integrate(x**(5/2)/sqrt(a-b*x), x) == 5/8*a**3*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(7/2)-5/12*a*x**(3/2)*sqrt(a-b*x)/b**2-1/3*x**(5/2)*sqrt(a-b*x)/b-5/8*a**2*sqrt(x)*sqrt(a-b*x)/b**3 +assert rubi_integrate(x**(3/2)/sqrt(a-b*x), x) == 3/4*a**2*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(5/2)-1/2*x**(3/2)*sqrt(a-b*x)/b-3/4*a*sqrt(x)*sqrt(a-b*x)/b**2 +assert rubi_integrate(sqrt(x)/sqrt(a-b*x), x) == a*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(3/2)-sqrt(x)*sqrt(a-b*x)/b +assert rubi_integrate(1/(sqrt(x)*sqrt(a-b*x)), x) == 2*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/sqrt(b) +assert rubi_integrate(1/(x**(3/2)*sqrt(a-b*x)), x) == -2*sqrt(a-b*x)/(a*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*sqrt(a-b*x)), x) == -2/3*sqrt(a-b*x)/(a*x**(3/2))-4/3*b*sqrt(a-b*x)/(a**2*sqrt(x)) +assert rubi_integrate(x**(5/2)/(a-b*x)**(3/2), x) == -15/4*a**2*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(7/2) + 2*x**(5/2)/(b*sqrt(a-b*x)) + 5/2*x**(3/2)*sqrt(a-b*x)/b**2 + 15/4*a*sqrt(x)*sqrt(a-b*x)/b**3 +assert rubi_integrate(x**(3/2)/(a-b*x)**(3/2), x) == -3*a*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(5/2) + 2*x**(3/2)/(b*sqrt(a-b*x)) + 3*sqrt(x)*sqrt(a-b*x)/b**2 +assert rubi_integrate(sqrt(x)/(a-b*x)**(3/2), x) == -2*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(3/2) + 2*sqrt(x)/(b*sqrt(a-b*x)) +assert rubi_integrate(1/((a-b*x)**(3/2)*sqrt(x)), x) == 2*sqrt(x)/(a*sqrt(a-b*x)) +assert rubi_integrate(1/(x**(3/2)*(a-b*x)**(3/2)), x) == 2/(a*sqrt(x)*sqrt(a-b*x))-4*sqrt(a-b*x)/(a**2*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*(a-b*x)**(3/2)), x) == 2/(a*x**(3/2)*sqrt(a-b*x))-8/3*sqrt(a-b*x)/(a**2*x**(3/2))-16/3*b*sqrt(a-b*x)/(a**3*sqrt(x)) +assert rubi_integrate(x**(5/2)/(a-b*x)**(5/2), x) == 2/3*x**(5/2)/(b*(a-b*x)**(3/2)) + 5*a*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(7/2)-10/3*x**(3/2)/(b**2*sqrt(a-b*x))-5*sqrt(x)*sqrt(a-b*x)/b**3 +assert rubi_integrate(x**(3/2)/(a-b*x)**(5/2), x) == 2/3*x**(3/2)/(b*(a-b*x)**(3/2)) + 2*arctan(sqrt(b)*sqrt(x)/sqrt(a-b*x))/b**(5/2)-2*sqrt(x)/(b**2*sqrt(a-b*x)) +assert rubi_integrate(sqrt(x)/(a-b*x)**(5/2), x) == 2/3*x**(3/2)/(a*(a-b*x)**(3/2)) +assert rubi_integrate(1/((a-b*x)**(5/2)*sqrt(x)), x) == 2/3*sqrt(x)/(a*(a-b*x)**(3/2)) + 4/3*sqrt(x)/(a**2*sqrt(a-b*x)) +assert rubi_integrate(1/(x**(3/2)*(a-b*x)**(5/2)), x) == 2/3/(a*(a-b*x)**(3/2)*sqrt(x)) + 8/3/(a**2*sqrt(x)*sqrt(a-b*x))-16/3*sqrt(a-b*x)/(a**3*sqrt(x)) +assert rubi_integrate(1/(x**(5/2)*(a-b*x)**(5/2)), x) == 2/3/(a*x**(3/2)*(a-b*x)**(3/2)) + 4/(a**2*x**(3/2)*sqrt(a-b*x))-16/3*sqrt(a-b*x)/(a**3*x**(3/2))-32/3*b*sqrt(a-b*x)/(a**4*sqrt(x)) +assert rubi_integrate(x**(5/2)/sqrt(2 + b*x), x) == -5*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2)-5/6*x**(3/2)*sqrt(2 + b*x)/b**2 + 1/3*x**(5/2)*sqrt(2 + b*x)/b + 5/2*sqrt(x)*sqrt(2 + b*x)/b**3 +assert rubi_integrate(x**(3/2)/sqrt(2 + b*x), x) == 3*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2) + 1/2*x**(3/2)*sqrt(2 + b*x)/b-3/2*sqrt(x)*sqrt(2 + b*x)/b**2 +assert rubi_integrate(sqrt(x)/sqrt(2 + b*x), x) == -2*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(3/2) + sqrt(x)*sqrt(2 + b*x)/b +assert rubi_integrate(1/(sqrt(x)*sqrt(2 + b*x)), x) == 2*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/sqrt(b) +assert rubi_integrate(1/(x**(3/2)*sqrt(2 + b*x)), x) == -sqrt(2 + b*x)/sqrt(x) +assert rubi_integrate(1/(x**(5/2)*sqrt(2 + b*x)), x) == -1/3*sqrt(2 + b*x)/x**(3/2) + 1/3*b*sqrt(2 + b*x)/sqrt(x) +assert rubi_integrate(1/(x**(7/2)*sqrt(2 + b*x)), x) == -1/5*sqrt(2 + b*x)/x**(5/2) + 2/15*b*sqrt(2 + b*x)/x**(3/2)-2/15*b**2*sqrt(2 + b*x)/sqrt(x) +assert rubi_integrate(1/(x**(9/2)*sqrt(2 + b*x)), x) == -1/7*sqrt(2 + b*x)/x**(7/2) + 3/35*b*sqrt(2 + b*x)/x**(5/2)-2/35*b**2*sqrt(2 + b*x)/x**(3/2) + 2/35*b**3*sqrt(2 + b*x)/sqrt(x) +assert rubi_integrate(x**(5/2)/(2 + b*x)**(3/2), x) == 15*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2)-2*x**(5/2)/(b*sqrt(2 + b*x)) + 5/2*x**(3/2)*sqrt(2 + b*x)/b**2-15/2*sqrt(x)*sqrt(2 + b*x)/b**3 +assert rubi_integrate(x**(3/2)/(2 + b*x)**(3/2), x) == -6*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2)-2*x**(3/2)/(b*sqrt(2 + b*x)) + 3*sqrt(x)*sqrt(2 + b*x)/b**2 +assert rubi_integrate(sqrt(x)/(2 + b*x)**(3/2), x) == 2*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(3/2)-2*sqrt(x)/(b*sqrt(2 + b*x)) +assert rubi_integrate(1/((2 + b*x)**(3/2)*sqrt(x)), x) == sqrt(x)/sqrt(2 + b*x) +assert rubi_integrate(1/(x**(3/2)*(2 + b*x)**(3/2)), x) == 1/(sqrt(x)*sqrt(2 + b*x))-sqrt(2 + b*x)/sqrt(x) +assert rubi_integrate(1/(x**(5/2)*(2 + b*x)**(3/2)), x) == 1/(x**(3/2)*sqrt(2 + b*x))-2/3*sqrt(2 + b*x)/x**(3/2) + 2/3*b*sqrt(2 + b*x)/sqrt(x) +assert rubi_integrate(1/(x**(7/2)*(2 + b*x)**(3/2)), x) == 1/(x**(5/2)*sqrt(2 + b*x))-3/5*sqrt(2 + b*x)/x**(5/2) + 2/5*b*sqrt(2 + b*x)/x**(3/2)-2/5*b**2*sqrt(2 + b*x)/sqrt(x) +assert rubi_integrate(x**(5/2)/(2 + b*x)**(5/2), x) == -2/3*x**(5/2)/(b*(2 + b*x)**(3/2))-10*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2)-10/3*x**(3/2)/(b**2*sqrt(2 + b*x)) + 5*sqrt(x)*sqrt(2 + b*x)/b**3 +assert rubi_integrate(x**(3/2)/(2 + b*x)**(5/2), x) == -2/3*x**(3/2)/(b*(2 + b*x)**(3/2)) + 2*arcsinh(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2)-2*sqrt(x)/(b**2*sqrt(2 + b*x)) +assert rubi_integrate(sqrt(x)/(2 + b*x)**(5/2), x) == 1/3*x**(3/2)/(2 + b*x)**(3/2) +assert rubi_integrate(1/((2 + b*x)**(5/2)*sqrt(x)), x) == 1/3*sqrt(x)/(2 + b*x)**(3/2) + 1/3*sqrt(x)/sqrt(2 + b*x) +assert rubi_integrate(1/(x**(3/2)*(2 + b*x)**(5/2)), x) == 1/3/((2 + b*x)**(3/2)*sqrt(x)) + 2/3/(sqrt(x)*sqrt(2 + b*x))-2/3*sqrt(2 + b*x)/sqrt(x) +assert rubi_integrate(1/(x**(5/2)*(2 + b*x)**(5/2)), x) == 1/3/(x**(3/2)*(2 + b*x)**(3/2)) + 1/(x**(3/2)*sqrt(2 + b*x))-2/3*sqrt(2 + b*x)/x**(3/2) + 2/3*b*sqrt(2 + b*x)/sqrt(x) +assert rubi_integrate(x**(5/2)/sqrt(2-b*x), x) == 5*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2)-5/6*x**(3/2)*sqrt(2-b*x)/b**2-1/3*x**(5/2)*sqrt(2-b*x)/b-5/2*sqrt(x)*sqrt(2-b*x)/b**3 +assert rubi_integrate(x**(3/2)/sqrt(2-b*x), x) == 3*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2)-1/2*x**(3/2)*sqrt(2-b*x)/b-3/2*sqrt(x)*sqrt(2-b*x)/b**2 +assert rubi_integrate(sqrt(x)/sqrt(2-b*x), x) == 2*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(3/2)-sqrt(x)*sqrt(2-b*x)/b +assert rubi_integrate(1/(sqrt(x)*sqrt(2-b*x)), x) == 2*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/sqrt(b) +assert rubi_integrate(1/(x**(3/2)*sqrt(2-b*x)), x) == -sqrt(2-b*x)/sqrt(x) +assert rubi_integrate(1/(x**(5/2)*sqrt(2-b*x)), x) == -1/3*sqrt(2-b*x)/x**(3/2)-1/3*b*sqrt(2-b*x)/sqrt(x) +assert rubi_integrate(x**(5/2)/(2-b*x)**(3/2), x) == -15*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2) + 2*x**(5/2)/(b*sqrt(2-b*x)) + 5/2*x**(3/2)*sqrt(2-b*x)/b**2 + 15/2*sqrt(x)*sqrt(2-b*x)/b**3 +assert rubi_integrate(x**(3/2)/(2-b*x)**(3/2), x) == -6*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2) + 2*x**(3/2)/(b*sqrt(2-b*x)) + 3*sqrt(x)*sqrt(2-b*x)/b**2 +assert rubi_integrate(sqrt(x)/(2-b*x)**(3/2), x) == -2*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(3/2) + 2*sqrt(x)/(b*sqrt(2-b*x)) +assert rubi_integrate(1/((2-b*x)**(3/2)*sqrt(x)), x) == sqrt(x)/sqrt(2-b*x) +assert rubi_integrate(1/(x**(3/2)*(2-b*x)**(3/2)), x) == 1/(sqrt(x)*sqrt(2-b*x))-sqrt(2-b*x)/sqrt(x) +assert rubi_integrate(1/(x**(5/2)*(2-b*x)**(3/2)), x) == 1/(x**(3/2)*sqrt(2-b*x))-2/3*sqrt(2-b*x)/x**(3/2)-2/3*b*sqrt(2-b*x)/sqrt(x) +assert rubi_integrate(x**(5/2)/(2-b*x)**(5/2), x) == 2/3*x**(5/2)/(b*(2-b*x)**(3/2)) + 10*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(7/2)-10/3*x**(3/2)/(b**2*sqrt(2-b*x))-5*sqrt(x)*sqrt(2-b*x)/b**3 +assert rubi_integrate(x**(3/2)/(2-b*x)**(5/2), x) == 2/3*x**(3/2)/(b*(2-b*x)**(3/2)) + 2*arcsin(sqrt(b)*sqrt(x)/sqrt(2))/b**(5/2)-2*sqrt(x)/(b**2*sqrt(2-b*x)) +assert rubi_integrate(sqrt(x)/(2-b*x)**(5/2), x) == 1/3*x**(3/2)/(2-b*x)**(3/2) +assert rubi_integrate(1/((2-b*x)**(5/2)*sqrt(x)), x) == 1/3*sqrt(x)/(2-b*x)**(3/2) + 1/3*sqrt(x)/sqrt(2-b*x) +assert rubi_integrate(1/(x**(3/2)*(2-b*x)**(5/2)), x) == 1/3/((2-b*x)**(3/2)*sqrt(x)) + 2/3/(sqrt(x)*sqrt(2-b*x))-2/3*sqrt(2-b*x)/sqrt(x) +assert rubi_integrate(1/(x**(5/2)*(2-b*x)**(5/2)), x) == 1/3/(x**(3/2)*(2-b*x)**(3/2)) + 1/(x**(3/2)*sqrt(2-b*x))-2/3*sqrt(2-b*x)/x**(3/2)-2/3*b*sqrt(2-b*x)/sqrt(x) +assert rubi_integrate(sqrt(x)/sqrt(1-x), x) == -1/2*arcsin(1-2*x)-sqrt(1-x)*sqrt(x) +assert rubi_integrate(1/(sqrt(1-x)*sqrt(x)), x) == -arcsin(1-2*x) +assert rubi_integrate(1/(sqrt(x)*sqrt(1-b*x)), x) == 2*arcsin(sqrt(b)*sqrt(x))/sqrt(b) + +# Integrands of the form (c x)**(m/3) (a + b x)**n + +# n>0 +assert rubi_integrate(x**(5/3)*(a + b*x), x) == 3/8*a*x**(8/3) + 3/11*b*x**(11/3) +assert rubi_integrate(x**(4/3)*(a + b*x), x) == 3/7*a*x**(7/3) + 3/10*b*x**(10/3) +assert rubi_integrate(x**(2/3)*(a + b*x), x) == 3/5*a*x**(5/3) + 3/8*b*x**(8/3) +assert rubi_integrate(x**(1/3)*(a + b*x), x) == 3/4*a*x**(4/3) + 3/7*b*x**(7/3) +assert rubi_integrate((a + b*x)/x**(1/3), x) == 3/2*a*x**(2/3) + 3/5*b*x**(5/3) +assert rubi_integrate((a + b*x)/x**(2/3), x) == 3*a*x**(1/3) + 3/4*b*x**(4/3) +assert rubi_integrate((a + b*x)/x**(4/3), x) == -3*a/x**(1/3) + 3/2*b*x**(2/3) +assert rubi_integrate((a + b*x)/x**(5/3), x) == -3/2*a/x**(2/3) + 3*b*x**(1/3) +assert rubi_integrate(x**(5/3)*(a + b*x)**2, x) == 3/8*a**2*x**(8/3) + 6/11*a*b*x**(11/3) + 3/14*b**2*x**(14/3) +assert rubi_integrate(x**(4/3)*(a + b*x)**2, x) == 3/7*a**2*x**(7/3) + 3/5*a*b*x**(10/3) + 3/13*b**2*x**(13/3) +assert rubi_integrate(x**(2/3)*(a + b*x)**2, x) == 3/5*a**2*x**(5/3) + 3/4*a*b*x**(8/3) + 3/11*b**2*x**(11/3) +assert rubi_integrate(x**(1/3)*(a + b*x)**2, x) == 3/4*a**2*x**(4/3) + 6/7*a*b*x**(7/3) + 3/10*b**2*x**(10/3) +assert rubi_integrate((a + b*x)**2/x**(1/3), x) == 3/2*a**2*x**(2/3) + 6/5*a*b*x**(5/3) + 3/8*b**2*x**(8/3) +assert rubi_integrate((a + b*x)**2/x**(2/3), x) == 3*a**2*x**(1/3) + 3/2*a*b*x**(4/3) + 3/7*b**2*x**(7/3) +assert rubi_integrate((a + b*x)**2/x**(4/3), x) == -3*a**2/x**(1/3) + 3*a*b*x**(2/3) + 3/5*b**2*x**(5/3) +assert rubi_integrate((a + b*x)**2/x**(5/3), x) == -3/2*a**2/x**(2/3) + 6*a*b*x**(1/3) + 3/4*b**2*x**(4/3) +assert rubi_integrate(x**(5/3)*(a + b*x)**3, x) == 3/8*a**3*x**(8/3) + 9/11*a**2*b*x**(11/3) + 9/14*a*b**2*x**(14/3) + 3/17*b**3*x**(17/3) +assert rubi_integrate(x**(4/3)*(a + b*x)**3, x) == 3/7*a**3*x**(7/3) + 9/10*a**2*b*x**(10/3) + 9/13*a*b**2*x**(13/3) + 3/16*b**3*x**(16/3) +assert rubi_integrate(x**(2/3)*(a + b*x)**3, x) == 3/5*a**3*x**(5/3) + 9/8*a**2*b*x**(8/3) + 9/11*a*b**2*x**(11/3) + 3/14*b**3*x**(14/3) +assert rubi_integrate(x**(1/3)*(a + b*x)**3, x) == 3/4*a**3*x**(4/3) + 9/7*a**2*b*x**(7/3) + 9/10*a*b**2*x**(10/3) + 3/13*b**3*x**(13/3) +assert rubi_integrate((a + b*x)**3/x**(1/3), x) == 3/2*a**3*x**(2/3) + 9/5*a**2*b*x**(5/3) + 9/8*a*b**2*x**(8/3) + 3/11*b**3*x**(11/3) +assert rubi_integrate((a + b*x)**3/x**(2/3), x) == 3*a**3*x**(1/3) + 9/4*a**2*b*x**(4/3) + 9/7*a*b**2*x**(7/3) + 3/10*b**3*x**(10/3) +assert rubi_integrate((a + b*x)**3/x**(4/3), x) == -3*a**3/x**(1/3) + 9/2*a**2*b*x**(2/3) + 9/5*a*b**2*x**(5/3) + 3/8*b**3*x**(8/3) +assert rubi_integrate((a + b*x)**3/x**(5/3), x) == -3/2*a**3/x**(2/3) + 9*a**2*b*x**(1/3) + 9/4*a*b**2*x**(4/3) + 3/7*b**3*x**(7/3) + +# n<0 +assert rubi_integrate(x**(5/3)/(a + b*x), x) == -3/2*a*x**(2/3)/b**2 + 3/5*x**(5/3)/b-3/2*a**(5/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/b**(8/3) + 1/2*a**(5/3)*log(a + b*x)/b**(8/3)-a**(5/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/b**(8/3) +assert rubi_integrate(x**(4/3)/(a + b*x), x) == -3*a*x**(1/3)/b**2 + 3/4*x**(4/3)/b + 3/2*a**(4/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/b**(7/3)-1/2*a**(4/3)*log(a + b*x)/b**(7/3)-a**(4/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/b**(7/3) +assert rubi_integrate(x**(2/3)/(a + b*x), x) == 3/2*x**(2/3)/b + 3/2*a**(2/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/b**(5/3)-1/2*a**(2/3)*log(a + b*x)/b**(5/3) + a**(2/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/b**(5/3) +assert rubi_integrate(x**(1/3)/(a + b*x), x) == 3*x**(1/3)/b-3/2*a**(1/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/b**(4/3) + 1/2*a**(1/3)*log(a + b*x)/b**(4/3) + a**(1/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/b**(4/3) +assert rubi_integrate(1/(x**(1/3)*(a + b*x)), x) == -3/2*log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(1/3)*b**(2/3)) + 1/2*log(a + b*x)/(a**(1/3)*b**(2/3))-arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/(a**(1/3)*b**(2/3)) +assert rubi_integrate(1/(x**(2/3)*(a + b*x)), x) == 3/2*log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(2/3)*b**(1/3))-1/2*log(a + b*x)/(a**(2/3)*b**(1/3))-arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/(a**(2/3)*b**(1/3)) +assert rubi_integrate(1/(x**(4/3)*(a + b*x)), x) == (-3)/(a*x**(1/3)) + 3/2*b**(1/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/a**(4/3)-1/2*b**(1/3)*log(a + b*x)/a**(4/3) + b**(1/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/a**(4/3) +assert rubi_integrate(1/(x**(5/3)*(a + b*x)), x) == (-3/2)/(a*x**(2/3))-3/2*b**(2/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/a**(5/3) + 1/2*b**(2/3)*log(a + b*x)/a**(5/3) + b**(2/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))*sqrt(3)/a**(5/3) +assert rubi_integrate(x**(5/3)/(a + b*x)**2, x) == 5/2*x**(2/3)/b**2-x**(5/3)/(b*(a + b*x)) + 5/2*a**(2/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/b**(8/3)-5/6*a**(2/3)*log(a + b*x)/b**(8/3) + 5*a**(2/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(b**(8/3)*sqrt(3)) +assert rubi_integrate(x**(4/3)/(a + b*x)**2, x) == 4*x**(1/3)/b**2-x**(4/3)/(b*(a + b*x))-2*a**(1/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/b**(7/3) + 2/3*a**(1/3)*log(a + b*x)/b**(7/3) + 4*a**(1/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(b**(7/3)*sqrt(3)) +assert rubi_integrate(x**(2/3)/(a + b*x)**2, x) == -x**(2/3)/(b*(a + b*x))-log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(1/3)*b**(5/3)) + 1/3*log(a + b*x)/(a**(1/3)*b**(5/3))-2*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(1/3)*b**(5/3)*sqrt(3)) +assert rubi_integrate(x**(1/3)/(a + b*x)**2, x) == -x**(1/3)/(b*(a + b*x)) + 1/2*log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(2/3)*b**(4/3))-1/6*log(a + b*x)/(a**(2/3)*b**(4/3))-arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(2/3)*b**(4/3)*sqrt(3)) +assert rubi_integrate(1/(x**(1/3)*(a + b*x)**2), x) == x**(2/3)/(a*(a + b*x))-1/2*log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(4/3)*b**(2/3)) + 1/6*log(a + b*x)/(a**(4/3)*b**(2/3))-arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(4/3)*b**(2/3)*sqrt(3)) +assert rubi_integrate(1/(x**(2/3)*(a + b*x)**2), x) == x**(1/3)/(a*(a + b*x)) + log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(5/3)*b**(1/3))-1/3*log(a + b*x)/(a**(5/3)*b**(1/3))-2*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(5/3)*b**(1/3)*sqrt(3)) +assert rubi_integrate(1/(x**(4/3)*(a + b*x)**2), x) == (-4)/(a**2*x**(1/3)) + 1/(a*x**(1/3)*(a + b*x)) + 2*b**(1/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/a**(7/3)-2/3*b**(1/3)*log(a + b*x)/a**(7/3) + 4*b**(1/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(7/3)*sqrt(3)) +assert rubi_integrate(1/(x**(5/3)*(a + b*x)**2), x) == (-5/2)/(a**2*x**(2/3)) + 1/(a*x**(2/3)*(a + b*x))-5/2*b**(2/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/a**(8/3) + 5/6*b**(2/3)*log(a + b*x)/a**(8/3) + 5*b**(2/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(8/3)*sqrt(3)) +assert rubi_integrate(x**(5/3)/(a + b*x)**3, x) == -1/2*x**(5/3)/(b*(a + b*x)**2)-5/6*x**(2/3)/(b**2*(a + b*x))-5/6*log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(1/3)*b**(8/3)) + 5/18*log(a + b*x)/(a**(1/3)*b**(8/3))-5/3*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(1/3)*b**(8/3)*sqrt(3)) +assert rubi_integrate(x**(4/3)/(a + b*x)**3, x) == -1/2*x**(4/3)/(b*(a + b*x)**2)-2/3*x**(1/3)/(b**2*(a + b*x)) + 1/3*log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(2/3)*b**(7/3))-1/9*log(a + b*x)/(a**(2/3)*b**(7/3))-2/3*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(2/3)*b**(7/3)*sqrt(3)) +assert rubi_integrate(x**(2/3)/(a + b*x)**3, x) == -1/2*x**(2/3)/(b*(a + b*x)**2) + 1/3*x**(2/3)/(a*b*(a + b*x))-1/6*log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(4/3)*b**(5/3)) + 1/18*log(a + b*x)/(a**(4/3)*b**(5/3))-1/3*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(4/3)*b**(5/3)*sqrt(3)) +assert rubi_integrate(x**(1/3)/(a + b*x)**3, x) == -1/2*x**(1/3)/(b*(a + b*x)**2) + 1/6*x**(1/3)/(a*b*(a + b*x)) + 1/6*log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(5/3)*b**(4/3))-1/18*log(a + b*x)/(a**(5/3)*b**(4/3))-1/3*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(5/3)*b**(4/3)*sqrt(3)) +assert rubi_integrate(1/(x**(1/3)*(a + b*x)**3), x) == 1/2*x**(2/3)/(a*(a + b*x)**2) + 2/3*x**(2/3)/(a**2*(a + b*x))-1/3*log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(7/3)*b**(2/3)) + 1/9*log(a + b*x)/(a**(7/3)*b**(2/3))-2/3*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(7/3)*b**(2/3)*sqrt(3)) +assert rubi_integrate(1/(x**(2/3)*(a + b*x)**3), x) == 1/2*x**(1/3)/(a*(a + b*x)**2) + 5/6*x**(1/3)/(a**2*(a + b*x)) + 5/6*log(a**(1/3) + b**(1/3)*x**(1/3))/(a**(8/3)*b**(1/3))-5/18*log(a + b*x)/(a**(8/3)*b**(1/3))-5/3*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(8/3)*b**(1/3)*sqrt(3)) +assert rubi_integrate(1/(x**(4/3)*(a + b*x)**3), x) == (-14/3)/(a**3*x**(1/3)) + 1/2/(a*x**(1/3)*(a + b*x)**2) + 7/6/(a**2*x**(1/3)*(a + b*x)) + 7/3*b**(1/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/a**(10/3)-7/9*b**(1/3)*log(a + b*x)/a**(10/3) + 14/3*b**(1/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(10/3)*sqrt(3)) +assert rubi_integrate(1/(x**(5/3)*(a + b*x)**3), x) == (-10/3)/(a**3*x**(2/3)) + 1/2/(a*x**(2/3)*(a + b*x)**2) + 4/3/(a**2*x**(2/3)*(a + b*x))-10/3*b**(2/3)*log(a**(1/3) + b**(1/3)*x**(1/3))/a**(11/3) + 10/9*b**(2/3)*log(a + b*x)/a**(11/3) + 20/3*b**(2/3)*arctan((a**(1/3)-2*b**(1/3)*x**(1/3))/(a**(1/3)*sqrt(3)))/(a**(11/3)*sqrt(3)) + +# Integrands of the form (c x)**(m/4) (a + b x)**n +assert rubi_integrate((1-x)**(1/4)/(1 + x), x) == 4*(1-x)**(1/4)-2*2**(1/4)*arctan((1-x)**(1/4)/2**(1/4))-2*2**(1/4)*arctanh((1-x)**(1/4)/2**(1/4)) + +# Integrands of the form (c x)**m (a + b x)**n when m is symbolic +assert rubi_integrate(x**m*(a + b*x)**10, x) == a**10*x**(1 + m)/(1 + m) + 10*a**9*b*x**(2 + m)/(2 + m) + 45*a**8*b**2*x**(3 + m)/(3 + m) + 120*a**7*b**3*x**(4 + m)/(4 + m) + 210*a**6*b**4*x**(5 + m)/(5 + m) + 252*a**5*b**5*x**(6 + m)/(6 + m) + 210*a**4*b**6*x**(7 + m)/(7 + m) + 120*a**3*b**7*x**(8 + m)/(8 + m) + 45*a**2*b**8*x**(9 + m)/(9 + m) + 10*a*b**9*x**(10 + m)/(10 + m) + b**10*x**(11 + m)/(11 + m) +assert rubi_integrate(x**m*(a + b*x)**7, x) == a**7*x**(1 + m)/(1 + m) + 7*a**6*b*x**(2 + m)/(2 + m) + 21*a**5*b**2*x**(3 + m)/(3 + m) + 35*a**4*b**3*x**(4 + m)/(4 + m) + 35*a**3*b**4*x**(5 + m)/(5 + m) + 21*a**2*b**5*x**(6 + m)/(6 + m) + 7*a*b**6*x**(7 + m)/(7 + m) + b**7*x**(8 + m)/(8 + m) +assert rubi_integrate(x**m*(a + b*x)**3, x) == a**3*x**(1 + m)/(1 + m) + 3*a**2*b*x**(2 + m)/(2 + m) + 3*a*b**2*x**(3 + m)/(3 + m) + b**3*x**(4 + m)/(4 + m) +assert rubi_integrate(x**m*(a + b*x)**2, x) == a**2*x**(1 + m)/(1 + m) + 2*a*b*x**(2 + m)/(2 + m) + b**2*x**(3 + m)/(3 + m) +assert rubi_integrate(x**m*(a + b*x), x) == a*x**(1 + m)/(1 + m) + b*x**(2 + m)/(2 + m) +assert rubi_integrate(x**m/(a + b*x), x) == x**(1 + m)*hypergeom([1,1 + m],[2 + m],-b*x/a)/(a*(1 + m)) +assert rubi_integrate(x**m/(a + b*x)**2, x) == x**(1 + m)*hypergeom([2,1 + m],[2 + m],-b*x/a)/(a**2*(1 + m)) +assert rubi_integrate(x**m/(a + b*x)**3, x) == x**(1 + m)*hypergeom([3,1 + m],[2 + m],-b*x/a)/(a**3*(1 + m)) +assert rubi_integrate(x**m*(a + b*x)**(5/2), x) == 2/7*x**m*(a + b*x)**(7/2)*hypergeom([7/2,-m],[9/2],1 + b*x/a)/(b*(-b*x/a)**m) +assert rubi_integrate(x**m*(a + b*x)**(3/2), x) == 2/5*x**m*(a + b*x)**(5/2)*hypergeom([5/2,-m],[7/2],1 + b*x/a)/(b*(-b*x/a)**m) +assert rubi_integrate(x**m*(a + b*x)**(1/2), x) == 2/3*x**m*(a + b*x)**(3/2)*hypergeom([3/2,-m],[5/2],1 + b*x/a)/(b*(-b*x/a)**m) +assert rubi_integrate(x**m/(a + b*x)**(1/2), x) == 2*x**m*hypergeom([1/2,-m],[3/2],1 + b*x/a)*sqrt(a + b*x)/(b*(-b*x/a)**m) +assert rubi_integrate(x**m/(a + b*x)**(3/2), x) == -2*x**m*hypergeom([-1/2,-m],[1/2],1 + b*x/a)/(b*(-b*x/a)**m*sqrt(a + b*x)) +assert rubi_integrate(x**m/(a + b*x)**(5/2), x) == -2/3*x**m*hypergeom([-3/2,-m],[-1/2],1 + b*x/a)/(b*(-b*x/a)**m*(a + b*x)**(3/2)) +assert rubi_integrate(x**(2 + m)/sqrt(a + b*x), x) == 2*a**2*x**m*hypergeom([1/2,-2-m],[3/2],1 + b*x/a)*sqrt(a + b*x)/(b**3*(-b*x/a)**m) +assert rubi_integrate(x**(1 + m)/sqrt(a + b*x), x) == -2*a*x**m*hypergeom([1/2,-1-m],[3/2],1 + b*x/a)*sqrt(a + b*x)/(b**2*(-b*x/a)**m) +assert rubi_integrate(x**m/sqrt(a + b*x), x) == 2*x**m*hypergeom([1/2,-m],[3/2],1 + b*x/a)*sqrt(a + b*x)/(b*(-b*x/a)**m) +assert rubi_integrate(x**(-1 + m)/sqrt(a + b*x), x) == -2*x**m*hypergeom([1/2,1-m],[3/2],1 + b*x/a)*sqrt(a + b*x)/(a*(-b*x/a)**m) +assert rubi_integrate(x**(-2 + m)/sqrt(a + b*x), x) == 2*b*x**m*hypergeom([1/2,2-m],[3/2],1 + b*x/a)*sqrt(a + b*x)/(a**2*(-b*x/a)**m) +assert rubi_integrate(x**(-3 + m)/sqrt(a + b*x), x) == -2*b**2*x**m*hypergeom([1/2,3-m],[3/2],1 + b*x/a)*sqrt(a + b*x)/(a**3*(-b*x/a)**m) +assert rubi_integrate(x**m/sqrt(2 + 3*x), x) == x**(1 + m)*hypergeom([1/2,1 + m],[2 + m],-3/2*x)/((1 + m)*sqrt(2)) +assert rubi_integrate(x**m/sqrt(2-3*x), x) == x**(1 + m)*hypergeom([1/2,1 + m],[2 + m],3/2*x)/((1 + m)*sqrt(2)) +assert rubi_integrate(x**m/sqrt(-2 + 3*x), x) == (3/2)**(-1-m)*hypergeom([1/2,-m],[3/2],1-3/2*x)*sqrt(-2 + 3*x) +assert rubi_integrate(x**m/sqrt(-2-3*x), x) == -2**(1 + m)*3**(-1-m)*x**m*hypergeom([1/2,-m],[3/2],1 + 3/2*x)*sqrt(-2-3*x)/(-x)**m +assert rubi_integrate((-x)**m/sqrt(a + b*x), x) == 2*(-x)**m*hypergeom([1/2,-m],[3/2],1 + b*x/a)*sqrt(a + b*x)/(b*(-b*x/a)**m) +assert rubi_integrate((-x)**m/sqrt(2 + 3*x), x) == -(-x)**(1 + m)*hypergeom([1/2,1 + m],[2 + m],-3/2*x)/((1 + m)*sqrt(2)) +assert rubi_integrate((-x)**m/sqrt(2-3*x), x) == -(-x)**(1 + m)*hypergeom([1/2,1 + m],[2 + m],3/2*x)/((1 + m)*sqrt(2)) +assert rubi_integrate((-x)**m/sqrt(-2 + 3*x), x) == 2**(1 + m)*3**(-1-m)*(-x)**m*hypergeom([1/2,-m],[3/2],1-3/2*x)*sqrt(-2 + 3*x)/x**m +assert rubi_integrate((-x)**m/sqrt(-2-3*x), x) == -(3/2)**(-1-m)*hypergeom([1/2,-m],[3/2],1 + 3/2*x)*sqrt(-2-3*x) +assert rubi_integrate(x**n/sqrt(1-x), x) == -2*hypergeom([1/2,-n],[3/2],1-x)*sqrt(1-x) +assert rubi_integrate(x**n/sqrt(a-a*x), x) == -2*hypergeom([1/2,-n],[3/2],1-x)*sqrt(a-a*x)/a + +# Integrands of the form (c x)**m (a + b x)**n when n is symbolic +assert rubi_integrate(x**m*(a + b*x)**n, x) == x**(1 + m)*(a + b*x)**n*hypergeom([1 + m,-n],[2 + m],-b*x/a)/((1 + m)*(1 + b*x/a)**n) +assert rubi_integrate(x**3*(a + b*x)**n, x) == -a**3*(a + b*x)**(1 + n)/(b**4*(1 + n)) + 3*a**2*(a + b*x)**(2 + n)/(b**4*(2 + n))-3*a*(a + b*x)**(3 + n)/(b**4*(3 + n)) + (a + b*x)**(4 + n)/(b**4*(4 + n)) +assert rubi_integrate(x**2*(a + b*x)**n, x) == a**2*(a + b*x)**(1 + n)/(b**3*(1 + n))-2*a*(a + b*x)**(2 + n)/(b**3*(2 + n)) + (a + b*x)**(3 + n)/(b**3*(3 + n)) +assert rubi_integrate(x*(a + b*x)**n, x) == -a*(a + b*x)**(1 + n)/(b**2*(1 + n)) + (a + b*x)**(2 + n)/(b**2*(2 + n)) +assert rubi_integrate((a + b*x)**n, x) == (a + b*x)**(1 + n)/(b*(1 + n)) +assert rubi_integrate((a + b*x)**n/x, x) == -(a + b*x)**(1 + n)*hypergeom([1,1 + n],[2 + n],1 + b*x/a)/(a*(1 + n)) +assert rubi_integrate((a + b*x)**n/x**2, x) == b*(a + b*x)**(1 + n)*hypergeom([2,1 + n],[2 + n],1 + b*x/a)/(a**2*(1 + n)) +assert rubi_integrate((a + b*x)**n/x**3, x) == -b**2*(a + b*x)**(1 + n)*hypergeom([3,1 + n],[2 + n],1 + b*x/a)/(a**3*(1 + n)) +assert rubi_integrate(x**(-4 + n)/(a + b*x)**n, x) == -x**(-3 + n)*(a + b*x)**(1-n)/(a*(3-n)) + 2*b*x**(-2 + n)*(a + b*x)**(1-n)/(a**2*(2-n)*(3-n))-2*b**2*x**(-1 + n)*(a + b*x)**(1-n)/(a**3*(3-n)*(2-3*n + n**2)) +assert rubi_integrate(x**(-3 + n)/(a + b*x)**n, x) == -x**(-2 + n)*(a + b*x)**(1-n)/(a*(2-n)) + b*x**(-1 + n)*(a + b*x)**(1-n)/(a**2*(1-n)*(2-n)) +assert rubi_integrate(x**(-2 + n)/(a + b*x)**n, x) == -x**(-1 + n)*(a + b*x)**(1-n)/(a*(1-n)) +assert rubi_integrate(x**(-1 + n)/(a + b*x)**n, x) == x**n*(1 + b*x/a)**n*hypergeom([n,n],[1 + n],-b*x/a)/(n*(a + b*x)**n) +assert rubi_integrate(x**n/(a + b*x)**n, x) == x**(1 + n)*(1 + b*x/a)**n*hypergeom([n,1 + n],[2 + n],-b*x/a)/((1 + n)*(a + b*x)**n) +assert rubi_integrate(x**(1 + n)/(a + b*x)**n, x) == x**(2 + n)*(1 + b*x/a)**n*hypergeom([n,2 + n],[3 + n],-b*x/a)/((2 + n)*(a + b*x)**n) +assert rubi_integrate(x**(3/2)*(a + b*x)**n, x) == 2/5*x**(5/2)*(a + b*x)**n*hypergeom([5/2,-n],[7/2],-b*x/a)/(1 + b*x/a)**n +assert rubi_integrate(x**(1/2)*(a + b*x)**n, x) == 2/3*x**(3/2)*(a + b*x)**n*hypergeom([3/2,-n],[5/2],-b*x/a)/(1 + b*x/a)**n +assert rubi_integrate((a + b*x)**n/x**(1/2), x) == 2*(a + b*x)**n*hypergeom([1/2,-n],[3/2],-b*x/a)*sqrt(x)/(1 + b*x/a)**n +assert rubi_integrate((a + b*x)**n/x**(3/2), x) == -2*(a + b*x)**n*hypergeom([-1/2,-n],[1/2],-b*x/a)/((1 + b*x/a)**n*sqrt(x)) +assert rubi_integrate((a + b*x)**n/x**(5/2), x) == -2/3*(a + b*x)**n*hypergeom([-3/2,-n],[-1/2],-b*x/a)/(x**(3/2)*(1 + b*x/a)**n) +assert rubi_integrate((b*x)**m*(2 + d*x)**n, x) == 2**n*(b*x)**(1 + m)*hypergeom([1 + m,-n],[2 + m],-1/2*d*x)/(b*(1 + m)) +assert rubi_integrate((b*x)**m*(c-b*c*x)**n, x) == -(c-b*c*x)**(1 + n)*hypergeom([-m,1 + n],[2 + n],1-b*x)/(b*c*(1 + n)) +assert rubi_integrate((b*x)**m*(c + d*x)**n, x) == (b*x)**(1 + m)*(c + d*x)**n*hypergeom([1 + m,-n],[2 + m],-d*x/c)/(b*(1 + m)*(1 + d*x/c)**n) +assert rubi_integrate(x**(-1 + n)*(a + b*x)**(-1-n), x) == x**n/(a*n*(a + b*x)**n) +assert rubi_integrate(x**(-3-n)*(a + b*x)**n, x) == -x**(-2-n)*(a + b*x)**(1 + n)/(a*(2 + n)) + b*x**(-1-n)*(a + b*x)**(1 + n)/(a**2*(1 + n)*(2 + n)) +assert rubi_integrate(x**(2*n-3*(1 + n))*(a + b*x)**n, x) == -x**(-2-n)*(a + b*x)**(1 + n)/(a*(2 + n)) + b*x**(-1-n)*(a + b*x)**(1 + n)/(a**2*(2 + 3*n + n**2)) + +# Integrands of the form (c + d x)**m (a + b (c + d x))**n + +# Integrands of the form (c + d x)**m (a + b (c + d x))**n +assert rubi_integrate(1/(e*(c + d*x) + sqrt(-a)), x) == log(e*(c + d*x) + sqrt(-a))/(d*e) + +# Integrands of the form (c + d x)**m (a + b (c + d x))**(n/2 +assert rubi_integrate((c + d*(a + b*x))**(5/2), x) == 2/7*(c + d*(a + b*x))**(7/2)/(b*d) +assert rubi_integrate((c + d*(a + b*x))**(3/2), x) == 2/5*(c + d*(a + b*x))**(5/2)/(b*d) +assert rubi_integrate((c + d*(a + b*x))**(1/2), x) == 2/3*(c + d*(a + b*x))**(3/2)/(b*d) +assert rubi_integrate(1/(c + d*(a + b*x))**(1/2), x) == 2*sqrt(c + d*(a + b*x))/(b*d) +assert rubi_integrate(1/(c + d*(a + b*x))**(3/2), x) == (-2)/(b*d*sqrt(c + d*(a + b*x))) +assert rubi_integrate(1/(c + d*(a + b*x))**(5/2), x) == (-2/3)/(b*d*(c + d*(a + b*x))**(3/2)) + +# Integrands of the form (a + b x)**m (c + d x)**n + +# Integrands of the form (a + b x)**m (c + d x)**n when b c-a d=0 + +# Integrands of the form (a + b x)**m (a d/b + d x)**n when b c-a d=0 +assert rubi_integrate((a + b*x)**5/(a*d/b + d*x)**3, x) == 1/3*b**2*(a + b*x)**3/d**3 +assert rubi_integrate((a + b*x)**4/(a*d/b + d*x)**3, x) == a*b**3*x/d**3 + 1/2*b**4*x**2/d**3 +assert rubi_integrate((a + b*x)**3/(a*d/b + d*x)**3, x) == b**3*x/d**3 +assert rubi_integrate((a + b*x)**2/(a*d/b + d*x)**3, x) == b**2*log(a + b*x)/d**3 +assert rubi_integrate((a + b*x)/(a*d/b + d*x)**3, x) == -b**2/(d**3*(a + b*x)) +assert rubi_integrate(1/((a + b*x)*(a*d/b + d*x)**3), x) == -1/3*b**2/(d**3*(a + b*x)**3) +assert rubi_integrate(1/((a + b*x)**2*(a*d/b + d*x)**3), x) == -1/4*b**2/(d**3*(a + b*x)**4) +assert rubi_integrate(1/((a + b*x)**3*(a*d/b + d*x)**3), x) == -1/5*b**2/(d**3*(a + b*x)**5) +assert rubi_integrate((b*c/d + b*x)**5/(c + d*x)**3, x) == 1/3*b**5*(c + d*x)**3/d**6 +assert rubi_integrate((b*c/d + b*x)**4/(c + d*x)**3, x) == b**4*c*x/d**4 + 1/2*b**4*x**2/d**3 +assert rubi_integrate((b*c/d + b*x)**3/(c + d*x)**3, x) == b**3*x/d**3 +assert rubi_integrate((b*c/d + b*x)**2/(c + d*x)**3, x) == b**2*log(c + d*x)/d**3 +assert rubi_integrate((b*c/d + b*x)/(c + d*x)**3, x) == -b/(d**2*(c + d*x)) +assert rubi_integrate(1/((b*c/d + b*x)*(c + d*x)**3), x) == (-1/3)/(b*(c + d*x)**3) +assert rubi_integrate(1/((b*c/d + b*x)**2*(c + d*x)**3), x) == -1/4*d/(b**2*(c + d*x)**4) +assert rubi_integrate(1/((b*c/d + b*x)**3*(c + d*x)**3), x) == -1/5*d**2/(b**3*(c + d*x)**5) +assert rubi_integrate((a + b*x)**5*(a*c + b*c*x)**n, x) == (a*c + b*c*x)**(6 + n)/(b*c**6*(6 + n)) +assert rubi_integrate((a + b*x)**5*(a*c + b*c*x)**3, x) == 1/9*c**3*(a + b*x)**9/b +assert rubi_integrate((a + b*x)**5*(a*c + b*c*x)**2, x) == 1/8*c**2*(a + b*x)**8/b +assert rubi_integrate((a + b*x)**5*(a*c + b*c*x), x) == 1/7*c*(a + b*x)**7/b +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x), x) == 1/5*(a + b*x)**5/(b*c) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**2, x) == 1/4*(a + b*x)**4/(b*c**2) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**3, x) == 1/3*(a + b*x)**3/(b*c**3) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**4, x) == a*x/c**4 + 1/2*b*x**2/c**4 +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**5, x) == x/c**5 +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**6, x) == log(a + b*x)/(b*c**6) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**7, x) == (-1)/(b*c**7*(a + b*x)) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**8, x) == (-1/2)/(b*c**8*(a + b*x)**2) +assert rubi_integrate(1/(sqrt(-2-3*x)*sqrt(2 + 3*x)), x) == 1/3*log(2 + 3*x)*sqrt(2 + 3*x)/sqrt(-2-3*x) + +# Integrands of the form (a + b x)**m (c + d x)**n when b c + a d=0 + +# Integrands of the form (a + b x)**m (a c-b c x)**n + +# m>0 +assert rubi_integrate((a + b*x)*(a*c-b*c*x)**3, x) == -1/2*a*c**3*(a-b*x)**4/b + 1/5*c**3*(a-b*x)**5/b +assert rubi_integrate((a + b*x)*(a*c-b*c*x)**2, x) == -2/3*a*c**2*(a-b*x)**3/b + 1/4*c**2*(a-b*x)**4/b +assert rubi_integrate((a + b*x)*(a*c-b*c*x), x) == a**2*c*x-1/3*b**2*c*x**3 +assert rubi_integrate(a + b*x, x) == a*x + 1/2*b*x**2 +assert rubi_integrate((a + b*x)/(a*c-b*c*x), x) == -x/c-2*a*log(a-b*x)/(b*c) +assert rubi_integrate((a + b*x)/(a*c-b*c*x)**2, x) == 2*a/(b*c**2*(a-b*x)) + log(a-b*x)/(b*c**2) +assert rubi_integrate((a + b*x)/(a*c-b*c*x)**3, x) == 1/4*(a + b*x)**2/(a*b*c**3*(a-b*x)**2) +assert rubi_integrate((a + b*x)/(a*c-b*c*x)**4, x) == 2/3*a/(b*c**4*(a-b*x)**3) + (-1/2)/(b*c**4*(a-b*x)**2) +assert rubi_integrate((a + b*x)/(a*c-b*c*x)**5, x) == 1/2*a/(b*c**5*(a-b*x)**4) + (-1/3)/(b*c**5*(a-b*x)**3) +assert rubi_integrate((a + b*x)/(a*c-b*c*x)**6, x) == 2/5*a/(b*c**6*(a-b*x)**5) + (-1/4)/(b*c**6*(a-b*x)**4) +assert rubi_integrate((a + b*x)**2*(a*c-b*c*x)**3, x) == -a**2*c**3*(a-b*x)**4/b + 4/5*a*c**3*(a-b*x)**5/b-1/6*c**3*(a-b*x)**6/b +assert rubi_integrate((a + b*x)**2*(a*c-b*c*x)**2, x) == a**4*c**2*x-2/3*a**2*b**2*c**2*x**3 + 1/5*b**4*c**2*x**5 +assert rubi_integrate((a + b*x)**2*(a*c-b*c*x), x) == 2/3*a*c*(a + b*x)**3/b-1/4*c*(a + b*x)**4/b +assert rubi_integrate((a + b*x)**2, x) == 1/3*(a + b*x)**3/b +assert rubi_integrate((a + b*x)**2/(a*c-b*c*x), x) == -2*a*x/c-1/2*(a + b*x)**2/(b*c)-4*a**2*log(a-b*x)/(b*c) +assert rubi_integrate((a + b*x)**2/(a*c-b*c*x)**2, x) == x/c**2 + 4*a**2/(b*c**2*(a-b*x)) + 4*a*log(a-b*x)/(b*c**2) +assert rubi_integrate((a + b*x)**2/(a*c-b*c*x)**3, x) == 2*a**2/(b*c**3*(a-b*x)**2)-4*a/(b*c**3*(a-b*x))-log(a-b*x)/(b*c**3) +assert rubi_integrate((a + b*x)**2/(a*c-b*c*x)**4, x) == 1/6*(a + b*x)**3/(a*b*c**4*(a-b*x)**3) +assert rubi_integrate((a + b*x)**2/(a*c-b*c*x)**5, x) == a**2/(b*c**5*(a-b*x)**4)-4/3*a/(b*c**5*(a-b*x)**3) + 1/2/(b*c**5*(a-b*x)**2) +assert rubi_integrate((a + b*x)**2/(a*c-b*c*x)**6, x) == 4/5*a**2/(b*c**6*(a-b*x)**5)-a/(b*c**6*(a-b*x)**4) + 1/3/(b*c**6*(a-b*x)**3) +assert rubi_integrate((a + b*x)**2/(a*c-b*c*x)**7, x) == 2/3*a**2/(b*c**7*(a-b*x)**6)-4/5*a/(b*c**7*(a-b*x)**5) + 1/4/(b*c**7*(a-b*x)**4) + +# m<0 +assert rubi_integrate((a*c-b*c*x)**3/(a + b*x), x) == -4*a**2*c**3*x + a*c**3*(a-b*x)**2/b + 1/3*c**3*(a-b*x)**3/b + 8*a**3*c**3*log(a + b*x)/b +assert rubi_integrate((a*c-b*c*x)**2/(a + b*x), x) == -2*a*c**2*x + 1/2*c**2*(a-b*x)**2/b + 4*a**2*c**2*log(a + b*x)/b +assert rubi_integrate((a*c-b*c*x)/(a + b*x), x) == -c*x + 2*a*c*log(a + b*x)/b +assert rubi_integrate(1/(a + b*x), x) == log(a + b*x)/b +assert rubi_integrate(1/((a + b*x)*(a*c-b*c*x)), x) == arctanh(b*x/a)/(a*b*c) +assert rubi_integrate(1/((a + b*x)*(a*c-b*c*x)**2), x) == 1/2/(a*b*c**2*(a-b*x)) + 1/2*arctanh(b*x/a)/(a**2*b*c**2) +assert rubi_integrate(1/((a + b*x)*(a*c-b*c*x)**3), x) == 1/4/(a*b*c**3*(a-b*x)**2) + 1/4/(a**2*b*c**3*(a-b*x)) + 1/4*arctanh(b*x/a)/(a**3*b*c**3) +assert rubi_integrate((a*c-b*c*x)**3/(a + b*x)**2, x) == 5*a*c**3*x-1/2*b*c**3*x**2-8*a**3*c**3/(b*(a + b*x))-12*a**2*c**3*log(a + b*x)/b +assert rubi_integrate((a*c-b*c*x)**2/(a + b*x)**2, x) == c**2*x-4*a**2*c**2/(b*(a + b*x))-4*a*c**2*log(a + b*x)/b +assert rubi_integrate((a*c-b*c*x)/(a + b*x)**2, x) == -2*a*c/(b*(a + b*x))-c*log(a + b*x)/b +assert rubi_integrate(1/(a + b*x)**2, x) == (-1)/(b*(a + b*x)) +assert rubi_integrate(1/((a + b*x)**2*(a*c-b*c*x)), x) == (-1/2)/(a*b*c*(a + b*x)) + 1/2*arctanh(b*x/a)/(a**2*b*c) +assert rubi_integrate(1/((a + b*x)**2*(a*c-b*c*x)**2), x) == 1/2*x/(a**2*c**2*(a**2-b**2*x**2)) + 1/2*arctanh(b*x/a)/(a**3*b*c**2) +assert rubi_integrate(1/((a + b*x)**2*(a*c-b*c*x)**3), x) == 1/8/(a**2*b*c**3*(a-b*x)**2) + 1/4/(a**3*b*c**3*(a-b*x)) + (-1/8)/(a**3*b*c**3*(a + b*x)) + 3/8*arctanh(b*x/a)/(a**4*b*c**3) + +# Integrands of the form (1 - x)**(m/2) (1 + x)**(n/2 + +# n>0 + +# Note: (1-x)**m*(1 + x)**m, x) == (1-x**2)**m +assert rubi_integrate((1-x)**(9/2)*(1 + x)**(1/2), x) == 7/8*(1-x)**(3/2)*(1 + x)**(3/2) + 21/40*(1-x)**(5/2)*(1 + x)**(3/2) + 3/10*(1-x)**(7/2)*(1 + x)**(3/2) + 1/6*(1-x)**(9/2)*(1 + x)**(3/2) + 21/16*arcsin(x) + 21/16*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(7/2)*(1 + x)**(1/2), x) == 7/12*(1-x)**(3/2)*(1 + x)**(3/2) + 7/20*(1-x)**(5/2)*(1 + x)**(3/2) + 1/5*(1-x)**(7/2)*(1 + x)**(3/2) + 7/8*arcsin(x) + 7/8*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(5/2)*(1 + x)**(1/2), x) == 5/12*(1-x)**(3/2)*(1 + x)**(3/2) + 1/4*(1-x)**(5/2)*(1 + x)**(3/2) + 5/8*arcsin(x) + 5/8*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(3/2)*(1 + x)**(1/2), x) == 1/3*(1-x)**(3/2)*(1 + x)**(3/2) + 1/2*arcsin(x) + 1/2*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(1/2)*(1 + x)**(1/2), x) == 1/2*arcsin(x) + 1/2*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1 + x)**(1/2)/(1-x)**(1/2), x) == arcsin(x)-sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1 + x)**(1/2)/(1-x)**(3/2), x) == -arcsin(x) + 2*sqrt(1 + x)/sqrt(1-x) +assert rubi_integrate((1 + x)**(1/2)/(1-x)**(5/2), x) == 1/3*(1 + x)**(3/2)/(1-x)**(3/2) +assert rubi_integrate((1 + x)**(1/2)/(1-x)**(7/2), x) == 1/5*(1 + x)**(3/2)/(1-x)**(5/2) + 1/15*(1 + x)**(3/2)/(1-x)**(3/2) +assert rubi_integrate((1 + x)**(1/2)/(1-x)**(9/2), x) == 1/7*(1 + x)**(3/2)/(1-x)**(7/2) + 2/35*(1 + x)**(3/2)/(1-x)**(5/2) + 2/105*(1 + x)**(3/2)/(1-x)**(3/2) +assert rubi_integrate((1 + x)**(1/2)/(1-x)**(11/2), x) == 1/9*(1 + x)**(3/2)/(1-x)**(9/2) + 1/21*(1 + x)**(3/2)/(1-x)**(7/2) + 2/105*(1 + x)**(3/2)/(1-x)**(5/2) + 2/315*(1 + x)**(3/2)/(1-x)**(3/2) +assert rubi_integrate((1 + x)**(1/2)/(1-x)**(13/2), x) == 1/11*(1 + x)**(3/2)/(1-x)**(11/2) + 4/99*(1 + x)**(3/2)/(1-x)**(9/2) + 4/231*(1 + x)**(3/2)/(1-x)**(7/2) + 8/1155*(1 + x)**(3/2)/(1-x)**(5/2) + 8/3465*(1 + x)**(3/2)/(1-x)**(3/2) +assert rubi_integrate((1-x)**(9/2)*(1 + x)**(3/2), x) == 3/8*(1-x)**(3/2)*x*(1 + x)**(3/2) + 3/10*(1-x)**(5/2)*(1 + x)**(5/2) + 3/14*(1-x)**(7/2)*(1 + x)**(5/2) + 1/7*(1-x)**(9/2)*(1 + x)**(5/2) + 9/16*arcsin(x) + 9/16*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(7/2)*(1 + x)**(3/2), x) == 7/24*(1-x)**(3/2)*x*(1 + x)**(3/2) + 7/30*(1-x)**(5/2)*(1 + x)**(5/2) + 1/6*(1-x)**(7/2)*(1 + x)**(5/2) + 7/16*arcsin(x) + 7/16*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(5/2)*(1 + x)**(3/2), x) == 1/4*(1-x)**(3/2)*x*(1 + x)**(3/2) + 1/5*(1-x)**(5/2)*(1 + x)**(5/2) + 3/8*arcsin(x) + 3/8*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(3/2)*(1 + x)**(3/2), x) == 1/4*(1-x)**(3/2)*x*(1 + x)**(3/2) + 3/8*arcsin(x) + 3/8*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(1/2)*(1 + x)**(3/2), x) == -1/3*(1-x)**(3/2)*(1 + x)**(3/2) + 1/2*arcsin(x) + 1/2*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1 + x)**(3/2)/(1-x)**(1/2), x) == 3/2*arcsin(x)-1/2*(1 + x)**(3/2)*sqrt(1-x)-3/2*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1 + x)**(3/2)/(1-x)**(3/2), x) == -3*arcsin(x) + 2*(1 + x)**(3/2)/sqrt(1-x) + 3*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1 + x)**(3/2)/(1-x)**(5/2), x) == 2/3*(1 + x)**(3/2)/(1-x)**(3/2) + arcsin(x)-2*sqrt(1 + x)/sqrt(1-x) +assert rubi_integrate((1 + x)**(3/2)/(1-x)**(7/2), x) == 1/5*(1 + x)**(5/2)/(1-x)**(5/2) +assert rubi_integrate((1 + x)**(3/2)/(1-x)**(9/2), x) == 1/7*(1 + x)**(5/2)/(1-x)**(7/2) + 1/35*(1 + x)**(5/2)/(1-x)**(5/2) +assert rubi_integrate((1 + x)**(3/2)/(1-x)**(11/2), x) == 1/9*(1 + x)**(5/2)/(1-x)**(9/2) + 2/63*(1 + x)**(5/2)/(1-x)**(7/2) + 2/315*(1 + x)**(5/2)/(1-x)**(5/2) +assert rubi_integrate((1 + x)**(3/2)/(1-x)**(13/2), x) == 1/11*(1 + x)**(5/2)/(1-x)**(11/2) + 1/33*(1 + x)**(5/2)/(1-x)**(9/2) + 2/231*(1 + x)**(5/2)/(1-x)**(7/2) + 2/1155*(1 + x)**(5/2)/(1-x)**(5/2) +assert rubi_integrate((1 + x)**(3/2)/(1-x)**(15/2), x) == 1/13*(1 + x)**(5/2)/(1-x)**(13/2) + 4/143*(1 + x)**(5/2)/(1-x)**(11/2) + 4/429*(1 + x)**(5/2)/(1-x)**(9/2) + 8/3003*(1 + x)**(5/2)/(1-x)**(7/2) + 8/15015*(1 + x)**(5/2)/(1-x)**(5/2) +assert rubi_integrate((1-x)**(11/2)*(1 + x)**(5/2), x) == 55/192*(1-x)**(3/2)*x*(1 + x)**(3/2) + 11/48*(1-x)**(5/2)*x*(1 + x)**(5/2) + 11/56*(1-x)**(7/2)*(1 + x)**(7/2) + 11/72*(1-x)**(9/2)*(1 + x)**(7/2) + 1/9*(1-x)**(11/2)*(1 + x)**(7/2) + 55/128*arcsin(x) + 55/128*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(9/2)*(1 + x)**(5/2), x) == 15/64*(1-x)**(3/2)*x*(1 + x)**(3/2) + 3/16*(1-x)**(5/2)*x*(1 + x)**(5/2) + 9/56*(1-x)**(7/2)*(1 + x)**(7/2) + 1/8*(1-x)**(9/2)*(1 + x)**(7/2) + 45/128*arcsin(x) + 45/128*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(7/2)*(1 + x)**(5/2), x) == 5/24*(1-x)**(3/2)*x*(1 + x)**(3/2) + 1/6*(1-x)**(5/2)*x*(1 + x)**(5/2) + 1/7*(1-x)**(7/2)*(1 + x)**(7/2) + 5/16*arcsin(x) + 5/16*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(5/2)*(1 + x)**(5/2), x) == 5/24*(1-x)**(3/2)*x*(1 + x)**(3/2) + 1/6*(1-x)**(5/2)*x*(1 + x)**(5/2) + 5/16*arcsin(x) + 5/16*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(3/2)*(1 + x)**(5/2), x) == 1/4*(1-x)**(3/2)*x*(1 + x)**(3/2)-1/5*(1-x)**(5/2)*(1 + x)**(5/2) + 3/8*arcsin(x) + 3/8*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(1/2)*(1 + x)**(5/2), x) == -5/12*(1-x)**(3/2)*(1 + x)**(3/2)-1/4*(1-x)**(3/2)*(1 + x)**(5/2) + 5/8*arcsin(x) + 5/8*x*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1 + x)**(5/2)/(1-x)**(1/2), x) == 5/2*arcsin(x)-5/6*(1 + x)**(3/2)*sqrt(1-x)-1/3*(1 + x)**(5/2)*sqrt(1-x)-5/2*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1 + x)**(5/2)/(1-x)**(3/2), x) == -15/2*arcsin(x) + 2*(1 + x)**(5/2)/sqrt(1-x) + 5/2*(1 + x)**(3/2)*sqrt(1-x) + 15/2*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1 + x)**(5/2)/(1-x)**(5/2), x) == 2/3*(1 + x)**(5/2)/(1-x)**(3/2) + 5*arcsin(x)-10/3*(1 + x)**(3/2)/sqrt(1-x)-5*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1 + x)**(5/2)/(1-x)**(7/2), x) == -2/3*(1 + x)**(3/2)/(1-x)**(3/2) + 2/5*(1 + x)**(5/2)/(1-x)**(5/2)-arcsin(x) + 2*sqrt(1 + x)/sqrt(1-x) +assert rubi_integrate((1 + x)**(5/2)/(1-x)**(9/2), x) == 1/7*(1 + x)**(7/2)/(1-x)**(7/2) +assert rubi_integrate((1 + x)**(5/2)/(1-x)**(11/2), x) == 1/9*(1 + x)**(7/2)/(1-x)**(9/2) + 1/63*(1 + x)**(7/2)/(1-x)**(7/2) +assert rubi_integrate((1 + x)**(5/2)/(1-x)**(13/2), x) == 1/11*(1 + x)**(7/2)/(1-x)**(11/2) + 2/99*(1 + x)**(7/2)/(1-x)**(9/2) + 2/693*(1 + x)**(7/2)/(1-x)**(7/2) +assert rubi_integrate((1 + x)**(5/2)/(1-x)**(15/2), x) == 1/13*(1 + x)**(7/2)/(1-x)**(13/2) + 3/143*(1 + x)**(7/2)/(1-x)**(11/2) + 2/429*(1 + x)**(7/2)/(1-x)**(9/2) + 2/3003*(1 + x)**(7/2)/(1-x)**(7/2) +assert rubi_integrate((1 + x)**(5/2)/(1-x)**(17/2), x) == 1/15*(1 + x)**(7/2)/(1-x)**(15/2) + 4/195*(1 + x)**(7/2)/(1-x)**(13/2) + 4/715*(1 + x)**(7/2)/(1-x)**(11/2) + 8/6435*(1 + x)**(7/2)/(1-x)**(9/2) + 8/45045*(1 + x)**(7/2)/(1-x)**(7/2) +assert rubi_integrate((1 + x)**(5/2)/(1-x)**(19/2), x) == 1/17*(1 + x)**(7/2)/(1-x)**(17/2) + 1/51*(1 + x)**(7/2)/(1-x)**(15/2) + 4/663*(1 + x)**(7/2)/(1-x)**(13/2) + 4/2431*(1 + x)**(7/2)/(1-x)**(11/2) + 8/21879*(1 + x)**(7/2)/(1-x)**(9/2) + 8/153153*(1 + x)**(7/2)/(1-x)**(7/2) + +# Note: Following two integrands are equal. +assert rubi_integrate((1 + a*x)**(3/2)/sqrt(1-a*x), x) == 3/2*arcsin(a*x)/a-1/2*(1 + a*x)**(3/2)*sqrt(1-a*x)/a-3/2*sqrt(1-a*x)*sqrt(1 + a*x)/a +assert rubi_integrate((1 + a*x)*sqrt(1-a**2*x**2)/(1-a*x), x) == -1/2*(1-a**2*x**2)**(3/2)/(a*(1-a*x)) + 3/2*arcsin(a*x)/a-3/2*sqrt(1-a**2*x**2)/a + +# n<0 +assert rubi_integrate((1-x)**(7/2)/(1 + x)**(1/2), x) == 35/8*arcsin(x) + 35/24*(1-x)**(3/2)*sqrt(1 + x) + 7/12*(1-x)**(5/2)*sqrt(1 + x) + 1/4*(1-x)**(7/2)*sqrt(1 + x) + 35/8*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(5/2)/(1 + x)**(1/2), x) == 5/2*arcsin(x) + 5/6*(1-x)**(3/2)*sqrt(1 + x) + 1/3*(1-x)**(5/2)*sqrt(1 + x) + 5/2*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(3/2)/(1 + x)**(1/2), x) == 3/2*arcsin(x) + 1/2*(1-x)**(3/2)*sqrt(1 + x) + 3/2*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(1/2)/(1 + x)**(1/2), x) == arcsin(x) + sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate(1/((1-x)**(1/2)*(1 + x)**(1/2)), x) == arcsin(x) +assert rubi_integrate(1/((1-x)**(3/2)*(1 + x)**(1/2)), x) == sqrt(1 + x)/sqrt(1-x) +assert rubi_integrate(1/((1-x)**(5/2)*(1 + x)**(1/2)), x) == 1/3*sqrt(1 + x)/(1-x)**(3/2) + 1/3*sqrt(1 + x)/sqrt(1-x) +assert rubi_integrate(1/((1-x)**(7/2)*(1 + x)**(1/2)), x) == 1/5*sqrt(1 + x)/(1-x)**(5/2) + 2/15*sqrt(1 + x)/(1-x)**(3/2) + 2/15*sqrt(1 + x)/sqrt(1-x) +assert rubi_integrate(1/((1-x)**(9/2)*(1 + x)**(1/2)), x) == 1/7*sqrt(1 + x)/(1-x)**(7/2) + 3/35*sqrt(1 + x)/(1-x)**(5/2) + 2/35*sqrt(1 + x)/(1-x)**(3/2) + 2/35*sqrt(1 + x)/sqrt(1-x) +assert rubi_integrate(1/((1-x)**(11/2)*(1 + x)**(1/2)), x) == 1/9*sqrt(1 + x)/(1-x)**(9/2) + 4/63*sqrt(1 + x)/(1-x)**(7/2) + 4/105*sqrt(1 + x)/(1-x)**(5/2) + 8/315*sqrt(1 + x)/(1-x)**(3/2) + 8/315*sqrt(1 + x)/sqrt(1-x) +assert rubi_integrate((1-x)**(7/2)/(1 + x)**(3/2), x) == -35/2*arcsin(x)-2*(1-x)**(7/2)/sqrt(1 + x)-35/6*(1-x)**(3/2)*sqrt(1 + x)-7/3*(1-x)**(5/2)*sqrt(1 + x)-35/2*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(5/2)/(1 + x)**(3/2), x) == -15/2*arcsin(x)-2*(1-x)**(5/2)/sqrt(1 + x)-5/2*(1-x)**(3/2)*sqrt(1 + x)-15/2*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(3/2)/(1 + x)**(3/2), x) == -3*arcsin(x)-2*(1-x)**(3/2)/sqrt(1 + x)-3*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(1/2)/(1 + x)**(3/2), x) == -arcsin(x)-2*sqrt(1-x)/sqrt(1 + x) +assert rubi_integrate(1/((1-x)**(1/2)*(1 + x)**(3/2)), x) == -sqrt(1-x)/sqrt(1 + x) +assert rubi_integrate(1/((1-x)**(3/2)*(1 + x)**(3/2)), x) == x/(sqrt(1-x)*sqrt(1 + x)) +assert rubi_integrate(1/((1-x)**(5/2)*(1 + x)**(3/2)), x) == 1/3/((1-x)**(3/2)*sqrt(1 + x)) + 2/3*x/(sqrt(1-x)*sqrt(1 + x)) +assert rubi_integrate(1/((1-x)**(7/2)*(1 + x)**(3/2)), x) == 1/5/((1-x)**(5/2)*sqrt(1 + x)) + 1/5/((1-x)**(3/2)*sqrt(1 + x)) + 2/5*x/(sqrt(1-x)*sqrt(1 + x)) +assert rubi_integrate(1/((1-x)**(9/2)*(1 + x)**(3/2)), x) == 1/7/((1-x)**(7/2)*sqrt(1 + x)) + 4/35/((1-x)**(5/2)*sqrt(1 + x)) + 4/35/((1-x)**(3/2)*sqrt(1 + x)) + 8/35*x/(sqrt(1-x)*sqrt(1 + x)) +assert rubi_integrate(1/((1-x)**(11/2)*(1 + x)**(3/2)), x) == 1/9/((1-x)**(9/2)*sqrt(1 + x)) + 5/63/((1-x)**(7/2)*sqrt(1 + x)) + 4/63/((1-x)**(5/2)*sqrt(1 + x)) + 4/63/((1-x)**(3/2)*sqrt(1 + x)) + 8/63*x/(sqrt(1-x)*sqrt(1 + x)) +assert rubi_integrate((1-x)**(9/2)/(1 + x)**(5/2), x) == -2/3*(1-x)**(9/2)/(1 + x)**(3/2) + 105/2*arcsin(x) + 6*(1-x)**(7/2)/sqrt(1 + x) + 35/2*(1-x)**(3/2)*sqrt(1 + x) + 7*(1-x)**(5/2)*sqrt(1 + x) + 105/2*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(7/2)/(1 + x)**(5/2), x) == -2/3*(1-x)**(7/2)/(1 + x)**(3/2) + 35/2*arcsin(x) + 14/3*(1-x)**(5/2)/sqrt(1 + x) + 35/6*(1-x)**(3/2)*sqrt(1 + x) + 35/2*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(5/2)/(1 + x)**(5/2), x) == -2/3*(1-x)**(5/2)/(1 + x)**(3/2) + 5*arcsin(x) + 10/3*(1-x)**(3/2)/sqrt(1 + x) + 5*sqrt(1-x)*sqrt(1 + x) +assert rubi_integrate((1-x)**(3/2)/(1 + x)**(5/2), x) == -2/3*(1-x)**(3/2)/(1 + x)**(3/2) + arcsin(x) + 2*sqrt(1-x)/sqrt(1 + x) +assert rubi_integrate((1-x)**(1/2)/(1 + x)**(5/2), x) == -1/3*(1-x)**(3/2)/(1 + x)**(3/2) +assert rubi_integrate(1/((1-x)**(1/2)*(1 + x)**(5/2)), x) == -1/3*sqrt(1-x)/(1 + x)**(3/2)-1/3*sqrt(1-x)/sqrt(1 + x) +assert rubi_integrate(1/((1-x)**(3/2)*(1 + x)**(5/2)), x) == (-1/3)/((1 + x)**(3/2)*sqrt(1-x)) + 2/3*x/(sqrt(1-x)*sqrt(1 + x)) +assert rubi_integrate(1/((1-x)**(5/2)*(1 + x)**(5/2)), x) == 1/3*x/((1-x)**(3/2)*(1 + x)**(3/2)) + 2/3*x/(sqrt(1-x)*sqrt(1 + x)) +assert rubi_integrate(1/((1-x)**(7/2)*(1 + x)**(5/2)), x) == 1/5/((1-x)**(5/2)*(1 + x)**(3/2)) + 4/15*x/((1-x)**(3/2)*(1 + x)**(3/2)) + 8/15*x/(sqrt(1-x)*sqrt(1 + x)) +assert rubi_integrate(1/((1-x)**(9/2)*(1 + x)**(5/2)), x) == 1/7/((1-x)**(7/2)*(1 + x)**(3/2)) + 1/7/((1-x)**(5/2)*(1 + x)**(3/2)) + 4/21*x/((1-x)**(3/2)*(1 + x)**(3/2)) + 8/21*x/(sqrt(1-x)*sqrt(1 + x)) +assert rubi_integrate(1/((1-x)**(11/2)*(1 + x)**(5/2)), x) == 1/9/((1-x)**(9/2)*(1 + x)**(3/2)) + 2/21/((1-x)**(7/2)*(1 + x)**(3/2)) + 2/21/((1-x)**(5/2)*(1 + x)**(3/2)) + 8/63*x/((1-x)**(3/2)*(1 + x)**(3/2)) + 16/63*x/(sqrt(1-x)*sqrt(1 + x)) + +# Integrands of the form (a + b x)**(m/2) (c + d x)**(m/2) when b c + a d=0 +assert rubi_integrate((a + a*x)**(5/2)*(c-c*x)**(5/2), x) == 5/24*a*c*x*(a + a*x)**(3/2)*(c-c*x)**(3/2) + 1/6*x*(a + a*x)**(5/2)*(c-c*x)**(5/2) + 5/8*a**(5/2)*c**(5/2)*arctan(sqrt(c)*sqrt(a + a*x)/(sqrt(a)*sqrt(c-c*x))) + 5/16*a**2*c**2*x*sqrt(a + a*x)*sqrt(c-c*x) +assert rubi_integrate((a + a*x)**(3/2)*(c-c*x)**(3/2), x) == 1/4*x*(a + a*x)**(3/2)*(c-c*x)**(3/2) + 3/4*a**(3/2)*c**(3/2)*arctan(sqrt(c)*sqrt(a + a*x)/(sqrt(a)*sqrt(c-c*x))) + 3/8*a*c*x*sqrt(a + a*x)*sqrt(c-c*x) +assert rubi_integrate((a + a*x)**(1/2)*(c-c*x)**(1/2), x) == arctan(sqrt(c)*sqrt(a + a*x)/(sqrt(a)*sqrt(c-c*x)))*sqrt(a)*sqrt(c) + 1/2*x*sqrt(a + a*x)*sqrt(c-c*x) +assert rubi_integrate(1/((a + a*x)**(1/2)*(c-c*x)**(1/2)), x) == 2*arctan(sqrt(c)*sqrt(a + a*x)/(sqrt(a)*sqrt(c-c*x)))/(sqrt(a)*sqrt(c)) +assert rubi_integrate(1/((a + a*x)**(3/2)*(c-c*x)**(3/2)), x) == x/(a*c*sqrt(a + a*x)*sqrt(c-c*x)) +assert rubi_integrate(1/((a + a*x)**(5/2)*(c-c*x)**(5/2)), x) == 1/3*x/(a*c*(a + a*x)**(3/2)*(c-c*x)**(3/2)) + 2/3*x/(a**2*c**2*sqrt(a + a*x)*sqrt(c-c*x)) +assert rubi_integrate(1/((a + a*x)**(7/2)*(c-c*x)**(7/2)), x) == 1/5*x/(a*c*(a + a*x)**(5/2)*(c-c*x)**(5/2)) + 4/15*x/(a**2*c**2*(a + a*x)**(3/2)*(c-c*x)**(3/2)) + 8/15*x/(a**3*c**3*sqrt(a + a*x)*sqrt(c-c*x)) +assert rubi_integrate(1/((a + a*x)**(9/2)*(c-c*x)**(9/2)), x) == 1/7*x/(a*c*(a + a*x)**(7/2)*(c-c*x)**(7/2)) + 6/35*x/(a**2*c**2*(a + a*x)**(5/2)*(c-c*x)**(5/2)) + 8/35*x/(a**3*c**3*(a + a*x)**(3/2)*(c-c*x)**(3/2)) + 16/35*x/(a**4*c**4*sqrt(a + a*x)*sqrt(c-c*x)) +assert rubi_integrate((a + b*x)**(5/2)*(a*c-b*c*x)**(5/2), x) == 5/24*a**2*c*x*(a + b*x)**(3/2)*(a*c-b*c*x)**(3/2) + 1/6*x*(a + b*x)**(5/2)*(a*c-b*c*x)**(5/2) + 5/8*a**6*c**(5/2)*arctan(sqrt(c)*sqrt(a + b*x)/sqrt(a*c-b*c*x))/b + 5/16*a**4*c**2*x*sqrt(a + b*x)*sqrt(a*c-b*c*x) +assert rubi_integrate((a + b*x)**(3/2)*(a*c-b*c*x)**(3/2), x) == 1/4*x*(a + b*x)**(3/2)*(a*c-b*c*x)**(3/2) + 3/4*a**4*c**(3/2)*arctan(sqrt(c)*sqrt(a + b*x)/sqrt(a*c-b*c*x))/b + 3/8*a**2*c*x*sqrt(a + b*x)*sqrt(a*c-b*c*x) +assert rubi_integrate((a + b*x)**(1/2)*(a*c-b*c*x)**(1/2), x) == a**2*arctan(sqrt(c)*sqrt(a + b*x)/sqrt(a*c-b*c*x))*sqrt(c)/b + 1/2*x*sqrt(a + b*x)*sqrt(a*c-b*c*x) +assert rubi_integrate(1/((a + b*x)**(1/2)*(a*c-b*c*x)**(1/2)), x) == 2*arctan(sqrt(c)*sqrt(a + b*x)/sqrt(a*c-b*c*x))/(b*sqrt(c)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(a*c-b*c*x)**(3/2)), x) == x/(a**2*c*sqrt(a + b*x)*sqrt(a*c-b*c*x)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(a*c-b*c*x)**(5/2)), x) == 1/3*x/(a**2*c*(a + b*x)**(3/2)*(a*c-b*c*x)**(3/2)) + 2/3*x/(a**4*c**2*sqrt(a + b*x)*sqrt(a*c-b*c*x)) +assert rubi_integrate(1/((a + b*x)**(7/2)*(a*c-b*c*x)**(7/2)), x) == 1/5*x/(a**2*c*(a + b*x)**(5/2)*(a*c-b*c*x)**(5/2)) + 4/15*x/(a**4*c**2*(a + b*x)**(3/2)*(a*c-b*c*x)**(3/2)) + 8/15*x/(a**6*c**3*sqrt(a + b*x)*sqrt(a*c-b*c*x)) +assert rubi_integrate(1/((a + b*x)**(9/2)*(a*c-b*c*x)**(9/2)), x) == 1/7*x/(a**2*c*(a + b*x)**(7/2)*(a*c-b*c*x)**(7/2)) + 6/35*x/(a**4*c**2*(a + b*x)**(5/2)*(a*c-b*c*x)**(5/2)) + 8/35*x/(a**6*c**3*(a + b*x)**(3/2)*(a*c-b*c*x)**(3/2)) + 16/35*x/(a**8*c**4*sqrt(a + b*x)*sqrt(a*c-b*c*x)) +assert rubi_integrate((3-6*x)**(5/2)*(2 + 4*x)**(5/2), x) == 15*(1-2*x)**(3/2)*x*(1 + 2*x)**(3/2)*sqrt(3/2) + 45/4*arcsin(2*x)*sqrt(3/2) + 6*(1-2*x)**(5/2)*x*(1 + 2*x)**(5/2)*sqrt(6) + 45/2*x*sqrt(3/2)*sqrt(1-2*x)*sqrt(1 + 2*x) +assert rubi_integrate((3-6*x)**(3/2)*(2 + 4*x)**(3/2), x) == 3*(1-2*x)**(3/2)*x*(1 + 2*x)**(3/2)*sqrt(3/2) + 9/4*arcsin(2*x)*sqrt(3/2) + 9/2*x*sqrt(3/2)*sqrt(1-2*x)*sqrt(1 + 2*x) +assert rubi_integrate((3-6*x)**(1/2)*(2 + 4*x)**(1/2), x) == 1/2*arcsin(2*x)*sqrt(3/2) + x*sqrt(3/2)*sqrt(1-2*x)*sqrt(1 + 2*x) +assert rubi_integrate(1/((3-6*x)**(1/2)*(2 + 4*x)**(1/2)), x) == 1/2*arcsin(2*x)/sqrt(6) +assert rubi_integrate(1/((3-6*x)**(3/2)*(2 + 4*x)**(3/2)), x) == 1/6*x/(sqrt(6)*sqrt(1-2*x)*sqrt(1 + 2*x)) +assert rubi_integrate(1/((3-6*x)**(5/2)*(2 + 4*x)**(5/2)), x) == 1/108*x/((1-2*x)**(3/2)*(1 + 2*x)**(3/2)*sqrt(6)) + 1/54*x/(sqrt(6)*sqrt(1-2*x)*sqrt(1 + 2*x)) +assert rubi_integrate(1/((3-6*x)**(7/2)*(2 + 4*x)**(7/2)), x) == 1/1080*x/((1-2*x)**(5/2)*(1 + 2*x)**(5/2)*sqrt(6)) + 1/810*x/((1-2*x)**(3/2)*(1 + 2*x)**(3/2)*sqrt(6)) + 1/405*x/(sqrt(6)*sqrt(1-2*x)*sqrt(1 + 2*x)) + +# Note: (3-x)**m*(-2 + x)**m, x) == (-6 + 5*x-x**2)**m +assert rubi_integrate((3-x)**(3/2)*(-2 + x)**(3/2), x) == -1/4*(3-x)**(5/2)*(-2 + x)**(3/2)-3/128*arcsin(5-2*x) + 1/32*(3-x)**(3/2)*sqrt(-2 + x)-1/8*(3-x)**(5/2)*sqrt(-2 + x) + 3/64*sqrt(3-x)*sqrt(-2 + x) +assert rubi_integrate((3-x)**(1/2)*(-2 + x)**(1/2), x) == -1/8*arcsin(5-2*x)-1/2*(3-x)**(3/2)*sqrt(-2 + x) + 1/4*sqrt(3-x)*sqrt(-2 + x) +assert rubi_integrate(1/((3-x)**(1/2)*(-2 + x)**(1/2)), x) == -arcsin(5-2*x) +assert rubi_integrate(1/((3-x)**(3/2)*(-2 + x)**(3/2)), x) == 2/(sqrt(3-x)*sqrt(-2 + x))-4*sqrt(3-x)/sqrt(-2 + x) +assert rubi_integrate(1/((3-x)**(5/2)*(-2 + x)**(5/2)), x) == 2/3/((3-x)**(3/2)*(-2 + x)**(3/2)) + 4/((-2 + x)**(3/2)*sqrt(3-x))-16/3*sqrt(3-x)/(-2 + x)**(3/2)-32/3*sqrt(3-x)/sqrt(-2 + x) +assert rubi_integrate(1/((3-x)**(3/2)*(3 + x)**(3/2)), x) == 1/9*x/(sqrt(3-x)*sqrt(3 + x)) +assert rubi_integrate(1/((3-b*x)**(3/2)*(3 + b*x)**(3/2)), x) == 1/9*x/(sqrt(3-b*x)*sqrt(3 + b*x)) +assert rubi_integrate(1/((6-2*x)**(3/2)*(3 + x)**(3/2)), x) == 1/18*x/(sqrt(2)*sqrt(3-x)*sqrt(3 + x)) +assert rubi_integrate(1/((6-2*b*x)**(3/2)*(3 + b*x)**(3/2)), x) == 1/18*x/(sqrt(2)*sqrt(3-b*x)*sqrt(3 + b*x)) +assert rubi_integrate(1/(sqrt(a + b*x)*sqrt(-a*d + b*d*x)), x) == 2*arctanh(sqrt(d)*sqrt(a + b*x)/sqrt(-a*d + b*d*x))/(b*sqrt(d)) + +# Integrands of the form (a + b x)**(m/4) (c + d x)**(n/4) when b c + a d=0 +assert rubi_integrate(1/((6-3*e*x)**(1/4)*(2 + e*x)**(3/4)), x) == -log(sqrt(3)-(2-e*x)**(1/4)*sqrt(6)/(2 + e*x)**(1/4) + sqrt(3)*sqrt(2-e*x)/sqrt(2 + e*x))/(3**(1/4)*e*sqrt(2)) + log(sqrt(3) + (2-e*x)**(1/4)*sqrt(6)/(2 + e*x)**(1/4) + sqrt(3)*sqrt(2-e*x)/sqrt(2 + e*x))/(3**(1/4)*e*sqrt(2)) + arctan(1-(2-e*x)**(1/4)*sqrt(2)/(2 + e*x)**(1/4))*sqrt(2)/(3**(1/4)*e)-arctan(1 + (2-e*x)**(1/4)*sqrt(2)/(2 + e*x)**(1/4))*sqrt(2)/(3**(1/4)*e) + +# n>0 + +# n<0 +assert rubi_integrate((a-I*a*x)**(7/4)/(a + I*a*x)**(1/4), x) == 14/5*a**2*x/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4))-14/15*I*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)-2/5*I*(a-I*a*x)**(7/4)*(a + I*a*x)**(3/4)/a-14/5*a**2*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate((a-I*a*x)**(3/4)/(a + I*a*x)**(1/4), x) == 2*a*x/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4))-2/3*I*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)/a-2*a*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)), x) == 2*x/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4))-2*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(5/4)*(a + I*a*x)**(1/4)), x) == (-2*I)/(a*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) + 2*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(9/4)*(a + I*a*x)**(1/4)), x) == (-4/5*I)/(a*(a-I*a*x)**(5/4)*(a + I*a*x)**(1/4)) + 2/5*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a**2*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(13/4)*(a + I*a*x)**(1/4)), x) == (-4/15*I)/(a**2*(a-I*a*x)**(5/4)*(a + I*a*x)**(1/4))-2/9*I*(a + I*a*x)**(3/4)/(a**2*(a-I*a*x)**(9/4)) + 2/15*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a**3*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(17/4)*(a + I*a*x)**(1/4)), x) == (-4/39*I)/(a**3*(a-I*a*x)**(5/4)*(a + I*a*x)**(1/4))-2/13*I*(a + I*a*x)**(3/4)/(a**2*(a-I*a*x)**(13/4))-10/117*I*(a + I*a*x)**(3/4)/(a**3*(a-I*a*x)**(9/4)) + 2/39*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a**4*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate((a-I*a*x)**(1/4)/(a + I*a*x)**(1/4), x) == -I*(a-I*a*x)**(1/4)*(a + I*a*x)**(3/4)/a-I*arctan(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))/sqrt(2) + I*arctan(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))/sqrt(2)-1/2*I*log(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/sqrt(2) + 1/2*I*log(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/sqrt(2) +assert rubi_integrate(1/((a-I*a*x)**(3/4)*(a + I*a*x)**(1/4)), x) == -I*log(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/(a*sqrt(2)) + I*log(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/(a*sqrt(2))-I*arctan(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))*sqrt(2)/a + I*arctan(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))*sqrt(2)/a +assert rubi_integrate(1/((a-I*a*x)**(7/4)*(a + I*a*x)**(1/4)), x) == -2/3*I*(a + I*a*x)**(3/4)/(a**2*(a-I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(11/4)*(a + I*a*x)**(1/4)), x) == -2/7*I*(a + I*a*x)**(3/4)/(a**2*(a-I*a*x)**(7/4))-4/21*I*(a + I*a*x)**(3/4)/(a**3*(a-I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(15/4)*(a + I*a*x)**(1/4)), x) == -2/11*I*(a + I*a*x)**(3/4)/(a**2*(a-I*a*x)**(11/4))-8/77*I*(a + I*a*x)**(3/4)/(a**3*(a-I*a*x)**(7/4))-16/231*I*(a + I*a*x)**(3/4)/(a**4*(a-I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(19/4)*(a + I*a*x)**(1/4)), x) == -2/15*I*(a + I*a*x)**(3/4)/(a**2*(a-I*a*x)**(15/4))-4/55*I*(a + I*a*x)**(3/4)/(a**3*(a-I*a*x)**(11/4))-16/385*I*(a + I*a*x)**(3/4)/(a**4*(a-I*a*x)**(7/4))-32/1155*I*(a + I*a*x)**(3/4)/(a**5*(a-I*a*x)**(3/4)) +assert rubi_integrate((a-I*a*x)**(3/4)/(a + I*a*x)**(3/4), x) == -I*(a-I*a*x)**(3/4)*(a + I*a*x)**(1/4)/a-3*I*arctan(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))/sqrt(2) + 3*I*arctan(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))/sqrt(2) + 3/2*I*log(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/sqrt(2)-3/2*I*log(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/sqrt(2) +assert rubi_integrate(1/((a-I*a*x)**(1/4)*(a + I*a*x)**(3/4)), x) == I*log(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/(a*sqrt(2))-I*log(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/(a*sqrt(2))-I*arctan(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))*sqrt(2)/a + I*arctan(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))*sqrt(2)/a +assert rubi_integrate(1/((a-I*a*x)**(5/4)*(a + I*a*x)**(3/4)), x) == -2*I*(a + I*a*x)**(1/4)/(a**2*(a-I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(9/4)*(a + I*a*x)**(3/4)), x) == -2/5*I*(a + I*a*x)**(1/4)/(a**2*(a-I*a*x)**(5/4))-4/5*I*(a + I*a*x)**(1/4)/(a**3*(a-I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(13/4)*(a + I*a*x)**(3/4)), x) == -2/9*I*(a + I*a*x)**(1/4)/(a**2*(a-I*a*x)**(9/4))-8/45*I*(a + I*a*x)**(1/4)/(a**3*(a-I*a*x)**(5/4))-16/45*I*(a + I*a*x)**(1/4)/(a**4*(a-I*a*x)**(1/4)) +assert rubi_integrate((a-I*a*x)**(5/4)/(a + I*a*x)**(3/4), x) == -10/3*I*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)-2/3*I*(a-I*a*x)**(5/4)*(a + I*a*x)**(1/4)/a + 10/3*a**2*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate((a-I*a*x)**(1/4)/(a + I*a*x)**(3/4), x) == -2*I*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)/a + 2*a*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)), x) == 2*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(7/4)*(a + I*a*x)**(3/4)), x) == -2/3*I*(a + I*a*x)**(1/4)/(a**2*(a-I*a*x)**(3/4)) + 2/3*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/(a*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(11/4)*(a + I*a*x)**(3/4)), x) == -2/7*I*(a + I*a*x)**(1/4)/(a**2*(a-I*a*x)**(7/4))-2/7*I*(a + I*a*x)**(1/4)/(a**3*(a-I*a*x)**(3/4)) + 2/7*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/(a**2*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate((a-I*a*x)**(7/4)/(a + I*a*x)**(7/4), x) == 4/3*I*(a-I*a*x)**(7/4)/(a*(a + I*a*x)**(3/4)) + 7/3*I*(a-I*a*x)**(3/4)*(a + I*a*x)**(1/4)/a + 7*I*arctan(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))/sqrt(2)-7*I*arctan(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))/sqrt(2)-7/2*I*log(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/sqrt(2) + 7/2*I*log(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/sqrt(2) +assert rubi_integrate((a-I*a*x)**(3/4)/(a + I*a*x)**(7/4), x) == 4/3*I*(a-I*a*x)**(3/4)/(a*(a + I*a*x)**(3/4))-I*log(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/(a*sqrt(2)) + I*log(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/(a*sqrt(2)) + I*arctan(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))*sqrt(2)/a-I*arctan(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))*sqrt(2)/a +assert rubi_integrate(1/((a-I*a*x)**(1/4)*(a + I*a*x)**(7/4)), x) == 2/3*I*(a-I*a*x)**(3/4)/(a**2*(a + I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(5/4)*(a + I*a*x)**(7/4)), x) == (-2*I)/(a**2*(a-I*a*x)**(1/4)*(a + I*a*x)**(3/4)) + 4/3*I*(a-I*a*x)**(3/4)/(a**3*(a + I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(9/4)*(a + I*a*x)**(7/4)), x) == (-2/5*I)/(a**2*(a-I*a*x)**(5/4)*(a + I*a*x)**(3/4)) + (-8/5*I)/(a**3*(a-I*a*x)**(1/4)*(a + I*a*x)**(3/4)) + 16/15*I*(a-I*a*x)**(3/4)/(a**4*(a + I*a*x)**(3/4)) +assert rubi_integrate((a-I*a*x)**(9/4)/(a + I*a*x)**(7/4), x) == 4/3*I*(a-I*a*x)**(9/4)/(a*(a + I*a*x)**(3/4)) + 10*I*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4) + 2*I*(a-I*a*x)**(5/4)*(a + I*a*x)**(1/4)/a-10*a**2*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate((a-I*a*x)**(5/4)/(a + I*a*x)**(7/4), x) == 4/3*I*(a-I*a*x)**(5/4)/(a*(a + I*a*x)**(3/4)) + 10/3*I*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)/a-10/3*a*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate((a-I*a*x)**(1/4)/(a + I*a*x)**(7/4), x) == 4/3*I*(a-I*a*x)**(1/4)/(a*(a + I*a*x)**(3/4))-2/3*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(3/4)*(a + I*a*x)**(7/4)), x) == 2/3*I*(a-I*a*x)**(1/4)/(a**2*(a + I*a*x)**(3/4)) + 2/3*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/(a*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(7/4)*(a + I*a*x)**(7/4)), x) == 2/3*x/(a**2*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) + 2/3*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/(a**2*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(11/4)*(a + I*a*x)**(7/4)), x) == (-2/7*I)/(a**2*(a-I*a*x)**(7/4)*(a + I*a*x)**(3/4)) + 10/21*x/(a**3*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) + 10/21*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/(a**3*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate(1/((a-I*a*x)**(15/4)*(a + I*a*x)**(7/4)), x) == (-2/11*I)/(a**2*(a-I*a*x)**(11/4)*(a + I*a*x)**(3/4)) + (-2/11*I)/(a**3*(a-I*a*x)**(7/4)*(a + I*a*x)**(3/4)) + 10/33*x/(a**4*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) + 10/33*(1 + x**2)**(3/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticF(sin(1/2*arctan(x)),sqrt(2))/(a**4*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)) +assert rubi_integrate((a-I*a*x)**(7/4)/(a + I*a*x)**(5/4), x) == -14*a*x/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) + 4*I*(a-I*a*x)**(7/4)/(a*(a + I*a*x)**(1/4)) + 14/3*I*(a-I*a*x)**(3/4)*(a + I*a*x)**(3/4)/a + 14*a*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate((a-I*a*x)**(3/4)/(a + I*a*x)**(5/4), x) == -6*x/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) + 4*I*(a-I*a*x)**(3/4)/(a*(a + I*a*x)**(1/4)) + 6*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(1/4)*(a + I*a*x)**(5/4)), x) == 2*I/(a*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) + 2*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(5/4)*(a + I*a*x)**(5/4)), x) == 2*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a**2*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(9/4)*(a + I*a*x)**(5/4)), x) == (-2/5*I)/(a**2*(a-I*a*x)**(5/4)*(a + I*a*x)**(1/4)) + 6/5*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a**3*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(13/4)*(a + I*a*x)**(5/4)), x) == (-2/9*I)/(a**2*(a-I*a*x)**(9/4)*(a + I*a*x)**(1/4)) + (-2/9*I)/(a**3*(a-I*a*x)**(5/4)*(a + I*a*x)**(1/4)) + 2/3*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a**4*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate((a-I*a*x)**(5/4)/(a + I*a*x)**(5/4), x) == 4*I*(a-I*a*x)**(5/4)/(a*(a + I*a*x)**(1/4)) + 5*I*(a-I*a*x)**(1/4)*(a + I*a*x)**(3/4)/a + 5*I*arctan(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))/sqrt(2)-5*I*arctan(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))/sqrt(2) + 5/2*I*log(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/sqrt(2)-5/2*I*log(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/sqrt(2) +assert rubi_integrate((a-I*a*x)**(1/4)/(a + I*a*x)**(5/4), x) ==4*I*(a-I*a*x)**(1/4)/(a*(a + I*a*x)**(1/4)) + I*log(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/(a*sqrt(2))-I*log(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/(a*sqrt(2)) + I*arctan(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))*sqrt(2)/a-I*arctan(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))*sqrt(2)/a +assert rubi_integrate(1/((a-I*a*x)**(3/4)*(a + I*a*x)**(5/4)), x) == 2*I*(a-I*a*x)**(1/4)/(a**2*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(7/4)*(a + I*a*x)**(5/4)), x) == (-2/3*I)/(a**2*(a-I*a*x)**(3/4)*(a + I*a*x)**(1/4)) + 4/3*I*(a-I*a*x)**(1/4)/(a**3*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(11/4)*(a + I*a*x)**(5/4)), x) == (-2/7*I)/(a**2*(a-I*a*x)**(7/4)*(a + I*a*x)**(1/4)) + (-8/21*I)/(a**3*(a-I*a*x)**(3/4)*(a + I*a*x)**(1/4)) + 16/21*I*(a-I*a*x)**(1/4)/(a**4*(a + I*a*x)**(1/4)) +assert rubi_integrate((a-I*a*x)**(7/4)/(a + I*a*x)**(9/4), x) == 4/5*I*(a-I*a*x)**(7/4)/(a*(a + I*a*x)**(5/4)) + 42/5*x/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4))-28/5*I*(a-I*a*x)**(3/4)/(a*(a + I*a*x)**(1/4))-42/5*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/((a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate((a-I*a*x)**(3/4)/(a + I*a*x)**(9/4), x) == 4/5*I*(a-I*a*x)**(3/4)/(a*(a + I*a*x)**(5/4)) + (-6/5*I)/(a*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4))-6/5*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(1/4)*(a + I*a*x)**(9/4)), x) == 4/5*I/(a*(a-I*a*x)**(1/4)*(a + I*a*x)**(5/4)) + 2/5*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a**2*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(5/4)*(a + I*a*x)**(9/4)), x) == 2/5*I/(a**2*(a-I*a*x)**(1/4)*(a + I*a*x)**(5/4)) + 6/5*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a**3*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(9/4)*(a + I*a*x)**(9/4)), x) == 2/5*x/(a**4*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)*(1 + x**2)) + 6/5*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a**4*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(13/4)*(a + I*a*x)**(9/4)), x) == (-2/9*I)/(a**2*(a-I*a*x)**(9/4)*(a + I*a*x)**(5/4)) + 14/45*x/(a**5*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)*(1 + x**2)) + 14/15*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a**5*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(17/4)*(a + I*a*x)**(9/4)), x) == (-2/13*I)/(a**2*(a-I*a*x)**(13/4)*(a + I*a*x)**(5/4)) + (-2/13*I)/(a**3*(a-I*a*x)**(9/4)*(a + I*a*x)**(5/4)) + 14/65*x/(a**6*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)*(1 + x**2)) + 42/65*(1 + x**2)**(1/4)*sqrt(cos(1/2*arctan(x))**2)/cos(1/2*arctan(x))*EllipticE(sin(1/2*arctan(x)),sqrt(2))/(a**6*(a-I*a*x)**(1/4)*(a + I*a*x)**(1/4)) +assert rubi_integrate((a-I*a*x)**(5/4)/(a + I*a*x)**(9/4), x) == 4/5*I*(a-I*a*x)**(5/4)/(a*(a + I*a*x)**(5/4))-4*I*(a-I*a*x)**(1/4)/(a*(a + I*a*x)**(1/4))-I*log(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/(a*sqrt(2)) + I*log(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4) + sqrt(a-I*a*x)/sqrt(a + I*a*x))/(a*sqrt(2))-I*arctan(1-(a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))*sqrt(2)/a + I*arctan(1 + (a-I*a*x)**(1/4)*sqrt(2)/(a + I*a*x)**(1/4))*sqrt(2)/a +assert rubi_integrate((a-I*a*x)**(1/4)/(a + I*a*x)**(9/4), x) == 2/5*I*(a-I*a*x)**(5/4)/(a**2*(a + I*a*x)**(5/4)) +assert rubi_integrate(1/((a-I*a*x)**(3/4)*(a + I*a*x)**(9/4)), x) == 2/5*I*(a-I*a*x)**(1/4)/(a**2*(a + I*a*x)**(5/4)) + 4/5*I*(a-I*a*x)**(1/4)/(a**3*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(7/4)*(a + I*a*x)**(9/4)), x) == (-2/3*I)/(a**2*(a-I*a*x)**(3/4)*(a + I*a*x)**(5/4)) + 8/15*I*(a-I*a*x)**(1/4)/(a**3*(a + I*a*x)**(5/4)) + 16/15*I*(a-I*a*x)**(1/4)/(a**4*(a + I*a*x)**(1/4)) +assert rubi_integrate(1/((a-I*a*x)**(11/4)*(a + I*a*x)**(9/4)), x) == (-2/7*I)/(a**2*(a-I*a*x)**(7/4)*(a + I*a*x)**(5/4)) + (-4/7*I)/(a**3*(a-I*a*x)**(3/4)*(a + I*a*x)**(5/4)) + 16/35*I*(a-I*a*x)**(1/4)/(a**4*(a + I*a*x)**(5/4)) + 32/35*I*(a-I*a*x)**(1/4)/(a**5*(a + I*a*x)**(1/4)) + +# Integrands of the form (a + b x)**m (a c-b c x)**n with n symbolic +assert rubi_integrate((a + b*x)**2*(a*c-b*c*x)**n, x) == -4*a**2*(a*c-b*c*x)**(1 + n)/(b*c*(1 + n)) + 4*a*(a*c-b*c*x)**(2 + n)/(b*c**2*(2 + n))-(a*c-b*c*x)**(3 + n)/(b*c**3*(3 + n)) +assert rubi_integrate((a + b*x)*(a*c-b*c*x)**n, x) == -2*a*(a*c-b*c*x)**(1 + n)/(b*c*(1 + n)) + (a*c-b*c*x)**(2 + n)/(b*c**2*(2 + n)) +assert rubi_integrate((a*c-b*c*x)**n/(a + b*x), x) == -1/2*(a*c-b*c*x)**(1 + n)*hypergeom([1,1 + n],[2 + n],1/2*(a-b*x)/a)/(a*b*c*(1 + n)) +assert rubi_integrate((a*c-b*c*x)**n/(a + b*x)**2, x) == -1/4*(a*c-b*c*x)**(1 + n)*hypergeom([2,1 + n],[2 + n],1/2*(a-b*x)/a)/(a**2*b*c*(1 + n)) +assert rubi_integrate((a + a*x)**m*(c-c*x)**m, x) == x*(a + a*x)**m*(c-c*x)**m*hypergeom([1/2,-m],[3/2],x**2)/(1-x**2)**m +assert rubi_integrate((a + b*x)**m*(a*c-b*c*x)**m, x) == x*(a + b*x)**m*(a*c-b*c*x)**m*hypergeom([1/2,-m],[3/2],b**2*x**2/a**2)/(1-b**2*x**2/a**2)**m +assert rubi_integrate((3-6*x)**m*(2 + 4*x)**m, x) == 6**m*x*hypergeom([1/2,-m],[3/2],4*x**2) + +# Integrands of the form (a + b x)**m (c + d x)**n + +# Integrands of the form (a + b x)**m (c + d x)**n + +# n>0 +assert rubi_integrate((a + b*x)**4*(c + d*x), x) == 1/5*(b*c-a*d)*(a + b*x)**5/b**2 + 1/6*d*(a + b*x)**6/b**2 +assert rubi_integrate((a + b*x)**3*(c + d*x), x) == 1/4*(b*c-a*d)*(a + b*x)**4/b**2 + 1/5*d*(a + b*x)**5/b**2 +assert rubi_integrate((a + b*x)**2*(c + d*x), x) == 1/3*(b*c-a*d)*(a + b*x)**3/b**2 + 1/4*d*(a + b*x)**4/b**2 +assert rubi_integrate((a + b*x)*(c + d*x), x) == a*c*x + 1/2*(b*c + a*d)*x**2 + 1/3*b*d*x**3 +assert rubi_integrate(c + d*x, x) == c*x + 1/2*d*x**2 +assert rubi_integrate((c + d*x)/(a + b*x), x) == d*x/b + (b*c-a*d)*log(a + b*x)/b**2 +assert rubi_integrate((c + d*x)/(a + b*x)**2, x) == (-b*c + a*d)/(b**2*(a + b*x)) + d*log(a + b*x)/b**2 +assert rubi_integrate((c + d*x)/(a + b*x)**3, x) == -1/2*(c + d*x)**2/((b*c-a*d)*(a + b*x)**2) +assert rubi_integrate((c + d*x)/(a + b*x)**4, x) == 1/3*(-b*c + a*d)/(b**2*(a + b*x)**3)-1/2*d/(b**2*(a + b*x)**2) +assert rubi_integrate((c + d*x)/(a + b*x)**5, x) == 1/4*(-b*c + a*d)/(b**2*(a + b*x)**4)-1/3*d/(b**2*(a + b*x)**3) +assert rubi_integrate((a + b*x)**4*(c + d*x)**2, x) == 1/5*(b*c-a*d)**2*(a + b*x)**5/b**3 + 1/3*d*(b*c-a*d)*(a + b*x)**6/b**3 + 1/7*d**2*(a + b*x)**7/b**3 +assert rubi_integrate((a + b*x)**3*(c + d*x)**2, x) == 1/4*(b*c-a*d)**2*(a + b*x)**4/b**3 + 2/5*d*(b*c-a*d)*(a + b*x)**5/b**3 + 1/6*d**2*(a + b*x)**6/b**3 +assert rubi_integrate((a + b*x)**2*(c + d*x)**2, x) == 1/3*(b*c-a*d)**2*(a + b*x)**3/b**3 + 1/2*d*(b*c-a*d)*(a + b*x)**4/b**3 + 1/5*d**2*(a + b*x)**5/b**3 +assert rubi_integrate((a + b*x)*(c + d*x)**2, x) == -1/3*(b*c-a*d)*(c + d*x)**3/d**2 + 1/4*b*(c + d*x)**4/d**2 +assert rubi_integrate((c + d*x)**2, x) == 1/3*(c + d*x)**3/d +assert rubi_integrate((c + d*x)**2/(a + b*x), x) == d*(b*c-a*d)*x/b**2 + 1/2*(c + d*x)**2/b + (b*c-a*d)**2*log(a + b*x)/b**3 +assert rubi_integrate((c + d*x)**2/(a + b*x)**2, x) == d**2*x/b**2-(b*c-a*d)**2/(b**3*(a + b*x)) + 2*d*(b*c-a*d)*log(a + b*x)/b**3 +assert rubi_integrate((c + d*x)**2/(a + b*x)**3, x) == -1/2*(b*c-a*d)**2/(b**3*(a + b*x)**2)-2*d*(b*c-a*d)/(b**3*(a + b*x)) + d**2*log(a + b*x)/b**3 +assert rubi_integrate((c + d*x)**2/(a + b*x)**4, x) == -1/3*(c + d*x)**3/((b*c-a*d)*(a + b*x)**3) +assert rubi_integrate((c + d*x)**2/(a + b*x)**5, x) == -1/4*(b*c-a*d)**2/(b**3*(a + b*x)**4)-2/3*d*(b*c-a*d)/(b**3*(a + b*x)**3)-1/2*d**2/(b**3*(a + b*x)**2) +assert rubi_integrate((c + d*x)**2/(a + b*x)**6, x) == -1/5*(b*c-a*d)**2/(b**3*(a + b*x)**5)-1/2*d*(b*c-a*d)/(b**3*(a + b*x)**4)-1/3*d**2/(b**3*(a + b*x)**3) +assert rubi_integrate((c + d*x)**2/(a + b*x)**7, x) == -1/6*(b*c-a*d)**2/(b**3*(a + b*x)**6)-2/5*d*(b*c-a*d)/(b**3*(a + b*x)**5)-1/4*d**2/(b**3*(a + b*x)**4) +assert rubi_integrate((a + b*x)**5*(c + d*x)**3, x) == 1/6*(b*c-a*d)**3*(a + b*x)**6/b**4 + 3/7*d*(b*c-a*d)**2*(a + b*x)**7/b**4 + 3/8*d**2*(b*c-a*d)*(a + b*x)**8/b**4 + 1/9*d**3*(a + b*x)**9/b**4 +assert rubi_integrate((a + b*x)**4*(c + d*x)**3, x) == 1/5*(b*c-a*d)**3*(a + b*x)**5/b**4 + 1/2*d*(b*c-a*d)**2*(a + b*x)**6/b**4 + 3/7*d**2*(b*c-a*d)*(a + b*x)**7/b**4 + 1/8*d**3*(a + b*x)**8/b**4 +assert rubi_integrate((a + b*x)**3*(c + d*x)**3, x) == 1/4*(b*c-a*d)**3*(a + b*x)**4/b**4 + 3/5*d*(b*c-a*d)**2*(a + b*x)**5/b**4 + 1/2*d**2*(b*c-a*d)*(a + b*x)**6/b**4 + 1/7*d**3*(a + b*x)**7/b**4 +assert rubi_integrate((a + b*x)**2*(c + d*x)**3, x) == 1/4*(b*c-a*d)**2*(c + d*x)**4/d**3-2/5*b*(b*c-a*d)*(c + d*x)**5/d**3 + 1/6*b**2*(c + d*x)**6/d**3 +assert rubi_integrate((a + b*x)*(c + d*x)**3, x) == -1/4*(b*c-a*d)*(c + d*x)**4/d**2 + 1/5*b*(c + d*x)**5/d**2 +assert rubi_integrate((c + d*x)**3, x) == 1/4*(c + d*x)**4/d +assert rubi_integrate((c + d*x)**3/(a + b*x), x) == d*(b*c-a*d)**2*x/b**3 + 1/2*(b*c-a*d)*(c + d*x)**2/b**2 + 1/3*(c + d*x)**3/b + (b*c-a*d)**3*log(a + b*x)/b**4 +assert rubi_integrate((c + d*x)**3/(a + b*x)**2, x) == d**2*(3*b*c-2*a*d)*x/b**3 + 1/2*d**3*x**2/b**2-(b*c-a*d)**3/(b**4*(a + b*x)) + 3*d*(b*c-a*d)**2*log(a + b*x)/b**4 +assert rubi_integrate((c + d*x)**3/(a + b*x)**3, x) == d**3*x/b**3-1/2*(b*c-a*d)**3/(b**4*(a + b*x)**2)-3*d*(b*c-a*d)**2/(b**4*(a + b*x)) + 3*d**2*(b*c-a*d)*log(a + b*x)/b**4 +assert rubi_integrate((c + d*x)**3/(a + b*x)**4, x) == -1/3*(b*c-a*d)**3/(b**4*(a + b*x)**3)-3/2*d*(b*c-a*d)**2/(b**4*(a + b*x)**2)-3*d**2*(b*c-a*d)/(b**4*(a + b*x)) + d**3*log(a + b*x)/b**4 +assert rubi_integrate((c + d*x)**3/(a + b*x)**5, x) == -1/4*(c + d*x)**4/((b*c-a*d)*(a + b*x)**4) +assert rubi_integrate((c + d*x)**3/(a + b*x)**6, x) == -1/5*(c + d*x)**4/((b*c-a*d)*(a + b*x)**5) + 1/20*d*(c + d*x)**4/((b*c-a*d)**2*(a + b*x)**4) +assert rubi_integrate((c + d*x)**3/(a + b*x)**7, x) == -1/6*(b*c-a*d)**3/(b**4*(a + b*x)**6)-3/5*d*(b*c-a*d)**2/(b**4*(a + b*x)**5)-3/4*d**2*(b*c-a*d)/(b**4*(a + b*x)**4)-1/3*d**3/(b**4*(a + b*x)**3) +assert rubi_integrate((c + d*x)**3/(a + b*x)**8, x) == -1/7*(b*c-a*d)**3/(b**4*(a + b*x)**7)-1/2*d*(b*c-a*d)**2/(b**4*(a + b*x)**6)-3/5*d**2*(b*c-a*d)/(b**4*(a + b*x)**5)-1/4*d**3/(b**4*(a + b*x)**4) +assert rubi_integrate((c + d*x)**3/(a + b*x)**9, x) == -1/8*(b*c-a*d)**3/(b**4*(a + b*x)**8)-3/7*d*(b*c-a*d)**2/(b**4*(a + b*x)**7)-1/2*d**2*(b*c-a*d)/(b**4*(a + b*x)**6)-1/5*d**3/(b**4*(a + b*x)**5) +assert rubi_integrate((a + b*x)**9*(c + d*x)**7, x) == 1/10*(b*c-a*d)**7*(a + b*x)**10/b**8 + 7/11*d*(b*c-a*d)**6*(a + b*x)**11/b**8 + 7/4*d**2*(b*c-a*d)**5*(a + b*x)**12/b**8 + 35/13*d**3*(b*c-a*d)**4*(a + b*x)**13/b**8 + 5/2*d**4*(b*c-a*d)**3*(a + b*x)**14/b**8 + 7/5*d**5*(b*c-a*d)**2*(a + b*x)**15/b**8 + 7/16*d**6*(b*c-a*d)*(a + b*x)**16/b**8 + 1/17*d**7*(a + b*x)**17/b**8 +assert rubi_integrate((a + b*x)**8*(c + d*x)**7, x) == 1/9*(b*c-a*d)**7*(a + b*x)**9/b**8 + 7/10*d*(b*c-a*d)**6*(a + b*x)**10/b**8 + 21/11*d**2*(b*c-a*d)**5*(a + b*x)**11/b**8 + 35/12*d**3*(b*c-a*d)**4*(a + b*x)**12/b**8 + 35/13*d**4*(b*c-a*d)**3*(a + b*x)**13/b**8 + 3/2*d**5*(b*c-a*d)**2*(a + b*x)**14/b**8 + 7/15*d**6*(b*c-a*d)*(a + b*x)**15/b**8 + 1/16*d**7*(a + b*x)**16/b**8 +assert rubi_integrate((a + b*x)**7*(c + d*x)**7, x) == 1/8*(b*c-a*d)**7*(a + b*x)**8/b**8 + 7/9*d*(b*c-a*d)**6*(a + b*x)**9/b**8 + 21/10*d**2*(b*c-a*d)**5*(a + b*x)**10/b**8 + 35/11*d**3*(b*c-a*d)**4*(a + b*x)**11/b**8 + 35/12*d**4*(b*c-a*d)**3*(a + b*x)**12/b**8 + 21/13*d**5*(b*c-a*d)**2*(a + b*x)**13/b**8 + 1/2*d**6*(b*c-a*d)*(a + b*x)**14/b**8 + 1/15*d**7*(a + b*x)**15/b**8 +assert rubi_integrate((a + b*x)**6*(c + d*x)**7, x) == 1/8*(b*c-a*d)**6*(c + d*x)**8/d**7-2/3*b*(b*c-a*d)**5*(c + d*x)**9/d**7 + 3/2*b**2*(b*c-a*d)**4*(c + d*x)**10/d**7-20/11*b**3*(b*c-a*d)**3*(c + d*x)**11/d**7 + 5/4*b**4*(b*c-a*d)**2*(c + d*x)**12/d**7-6/13*b**5*(b*c-a*d)*(c + d*x)**13/d**7 + 1/14*b**6*(c + d*x)**14/d**7 +assert rubi_integrate((a + b*x)**5*(c + d*x)**7, x) == -1/8*(b*c-a*d)**5*(c + d*x)**8/d**6 + 5/9*b*(b*c-a*d)**4*(c + d*x)**9/d**6-b**2*(b*c-a*d)**3*(c + d*x)**10/d**6 + 10/11*b**3*(b*c-a*d)**2*(c + d*x)**11/d**6-5/12*b**4*(b*c-a*d)*(c + d*x)**12/d**6 + 1/13*b**5*(c + d*x)**13/d**6 +assert rubi_integrate((a + b*x)**4*(c + d*x)**7, x) == 1/8*(b*c-a*d)**4*(c + d*x)**8/d**5-4/9*b*(b*c-a*d)**3*(c + d*x)**9/d**5 + 3/5*b**2*(b*c-a*d)**2*(c + d*x)**10/d**5-4/11*b**3*(b*c-a*d)*(c + d*x)**11/d**5 + 1/12*b**4*(c + d*x)**12/d**5 +assert rubi_integrate((a + b*x)**3*(c + d*x)**7, x) == -1/8*(b*c-a*d)**3*(c + d*x)**8/d**4 + 1/3*b*(b*c-a*d)**2*(c + d*x)**9/d**4-3/10*b**2*(b*c-a*d)*(c + d*x)**10/d**4 + 1/11*b**3*(c + d*x)**11/d**4 +assert rubi_integrate((a + b*x)**2*(c + d*x)**7, x) == 1/8*(b*c-a*d)**2*(c + d*x)**8/d**3-2/9*b*(b*c-a*d)*(c + d*x)**9/d**3 + 1/10*b**2*(c + d*x)**10/d**3 +assert rubi_integrate((a + b*x)*(c + d*x)**7, x) == -1/8*(b*c-a*d)*(c + d*x)**8/d**2 + 1/9*b*(c + d*x)**9/d**2 +assert rubi_integrate((c + d*x)**7, x) == 1/8*(c + d*x)**8/d +assert rubi_integrate((c + d*x)**7/(a + b*x), x) == d*(b*c-a*d)**6*x/b**7 + 1/2*(b*c-a*d)**5*(c + d*x)**2/b**6 + 1/3*(b*c-a*d)**4*(c + d*x)**3/b**5 + 1/4*(b*c-a*d)**3*(c + d*x)**4/b**4 + 1/5*(b*c-a*d)**2*(c + d*x)**5/b**3 + 1/6*(b*c-a*d)*(c + d*x)**6/b**2 + 1/7*(c + d*x)**7/b + (b*c-a*d)**7*log(a + b*x)/b**8 +assert rubi_integrate((c + d*x)**7/(a + b*x)**2, x) == 21*d**2*(b*c-a*d)**5*x/b**7-(b*c-a*d)**7/(b**8*(a + b*x)) + 35/2*d**3*(b*c-a*d)**4*(a + b*x)**2/b**8 + 35/3*d**4*(b*c-a*d)**3*(a + b*x)**3/b**8 + 21/4*d**5*(b*c-a*d)**2*(a + b*x)**4/b**8 + 7/5*d**6*(b*c-a*d)*(a + b*x)**5/b**8 + 1/6*d**7*(a + b*x)**6/b**8 + 7*d*(b*c-a*d)**6*log(a + b*x)/b**8 +assert rubi_integrate((c + d*x)**7/(a + b*x)**3, x) == 35*d**3*(b*c-a*d)**4*x/b**7-1/2*(b*c-a*d)**7/(b**8*(a + b*x)**2)-7*d*(b*c-a*d)**6/(b**8*(a + b*x)) + 35/2*d**4*(b*c-a*d)**3*(a + b*x)**2/b**8 + 7*d**5*(b*c-a*d)**2*(a + b*x)**3/b**8 + 7/4*d**6*(b*c-a*d)*(a + b*x)**4/b**8 + 1/5*d**7*(a + b*x)**5/b**8 + 21*d**2*(b*c-a*d)**5*log(a + b*x)/b**8 +assert rubi_integrate((c + d*x)**7/(a + b*x)**4, x) == 35*d**4*(b*c-a*d)**3*x/b**7-1/3*(b*c-a*d)**7/(b**8*(a + b*x)**3)-7/2*d*(b*c-a*d)**6/(b**8*(a + b*x)**2)-21*d**2*(b*c-a*d)**5/(b**8*(a + b*x)) + 21/2*d**5*(b*c-a*d)**2*(a + b*x)**2/b**8 + 7/3*d**6*(b*c-a*d)*(a + b*x)**3/b**8 + 1/4*d**7*(a + b*x)**4/b**8 + 35*d**3*(b*c-a*d)**4*log(a + b*x)/b**8 +assert rubi_integrate((c + d*x)**7/(a + b*x)**5, x) == 21*d**5*(b*c-a*d)**2*x/b**7-1/4*(b*c-a*d)**7/(b**8*(a + b*x)**4)-7/3*d*(b*c-a*d)**6/(b**8*(a + b*x)**3)-21/2*d**2*(b*c-a*d)**5/(b**8*(a + b*x)**2)-35*d**3*(b*c-a*d)**4/(b**8*(a + b*x)) + 7/2*d**6*(b*c-a*d)*(a + b*x)**2/b**8 + 1/3*d**7*(a + b*x)**3/b**8 + 35*d**4*(b*c-a*d)**3*log(a + b*x)/b**8 +assert rubi_integrate((c + d*x)**7/(a + b*x)**6, x) == d**6*(7*b*c-6*a*d)*x/b**7 + 1/2*d**7*x**2/b**6-1/5*(b*c-a*d)**7/(b**8*(a + b*x)**5)-7/4*d*(b*c-a*d)**6/(b**8*(a + b*x)**4)-7*d**2*(b*c-a*d)**5/(b**8*(a + b*x)**3)-35/2*d**3*(b*c-a*d)**4/(b**8*(a + b*x)**2)-35*d**4*(b*c-a*d)**3/(b**8*(a + b*x)) + 21*d**5*(b*c-a*d)**2*log(a + b*x)/b**8 +assert rubi_integrate((c + d*x)**7/(a + b*x)**7, x) == d**7*x/b**7-1/6*(b*c-a*d)**7/(b**8*(a + b*x)**6)-7/5*d*(b*c-a*d)**6/(b**8*(a + b*x)**5)-21/4*d**2*(b*c-a*d)**5/(b**8*(a + b*x)**4)-35/3*d**3*(b*c-a*d)**4/(b**8*(a + b*x)**3)-35/2*d**4*(b*c-a*d)**3/(b**8*(a + b*x)**2)-21*d**5*(b*c-a*d)**2/(b**8*(a + b*x)) + 7*d**6*(b*c-a*d)*log(a + b*x)/b**8 +assert rubi_integrate((c + d*x)**7/(a + b*x)**8, x) == -1/7*(b*c-a*d)**7/(b**8*(a + b*x)**7)-7/6*d*(b*c-a*d)**6/(b**8*(a + b*x)**6)-21/5*d**2*(b*c-a*d)**5/(b**8*(a + b*x)**5)-35/4*d**3*(b*c-a*d)**4/(b**8*(a + b*x)**4)-35/3*d**4*(b*c-a*d)**3/(b**8*(a + b*x)**3)-21/2*d**5*(b*c-a*d)**2/(b**8*(a + b*x)**2)-7*d**6*(b*c-a*d)/(b**8*(a + b*x)) + d**7*log(a + b*x)/b**8 +assert rubi_integrate((c + d*x)**7/(a + b*x)**9, x) == -1/8*(c + d*x)**8/((b*c-a*d)*(a + b*x)**8) +assert rubi_integrate((c + d*x)**7/(a + b*x)**10, x) == -1/9*(c + d*x)**8/((b*c-a*d)*(a + b*x)**9) + 1/72*d*(c + d*x)**8/((b*c-a*d)**2*(a + b*x)**8) +assert rubi_integrate((c + d*x)**7/(a + b*x)**11, x) == -1/10*(c + d*x)**8/((b*c-a*d)*(a + b*x)**10) + 1/45*d*(c + d*x)**8/((b*c-a*d)**2*(a + b*x)**9)-1/360*d**2*(c + d*x)**8/((b*c-a*d)**3*(a + b*x)**8) +assert rubi_integrate((c + d*x)**7/(a + b*x)**12, x) == -1/11*(c + d*x)**8/((b*c-a*d)*(a + b*x)**11) + 3/110*d*(c + d*x)**8/((b*c-a*d)**2*(a + b*x)**10)-1/165*d**2*(c + d*x)**8/((b*c-a*d)**3*(a + b*x)**9) + 1/1320*d**3*(c + d*x)**8/((b*c-a*d)**4*(a + b*x)**8) +assert rubi_integrate((c + d*x)**7/(a + b*x)**13, x) == -1/12*(c + d*x)**8/((b*c-a*d)*(a + b*x)**12) + 1/33*d*(c + d*x)**8/((b*c-a*d)**2*(a + b*x)**11)-1/110*d**2*(c + d*x)**8/((b*c-a*d)**3*(a + b*x)**10) + 1/495*d**3*(c + d*x)**8/((b*c-a*d)**4*(a + b*x)**9)-1/3960*d**4*(c + d*x)**8/((b*c-a*d)**5*(a + b*x)**8) +assert rubi_integrate((c + d*x)**7/(a + b*x)**14, x) == -1/13*(b*c-a*d)**7/(b**8*(a + b*x)**13)-7/12*d*(b*c-a*d)**6/(b**8*(a + b*x)**12)-21/11*d**2*(b*c-a*d)**5/(b**8*(a + b*x)**11)-7/2*d**3*(b*c-a*d)**4/(b**8*(a + b*x)**10)-35/9*d**4*(b*c-a*d)**3/(b**8*(a + b*x)**9)-21/8*d**5*(b*c-a*d)**2/(b**8*(a + b*x)**8)-d**6*(b*c-a*d)/(b**8*(a + b*x)**7)-1/6*d**7/(b**8*(a + b*x)**6) +assert rubi_integrate((c + d*x)**7/(a + b*x)**15, x) == -1/14*(b*c-a*d)**7/(b**8*(a + b*x)**14)-7/13*d*(b*c-a*d)**6/(b**8*(a + b*x)**13)-7/4*d**2*(b*c-a*d)**5/(b**8*(a + b*x)**12)-35/11*d**3*(b*c-a*d)**4/(b**8*(a + b*x)**11)-7/2*d**4*(b*c-a*d)**3/(b**8*(a + b*x)**10)-7/3*d**5*(b*c-a*d)**2/(b**8*(a + b*x)**9)-7/8*d**6*(b*c-a*d)/(b**8*(a + b*x)**8)-1/7*d**7/(b**8*(a + b*x)**7) +assert rubi_integrate((c + d*x)**7/(a + b*x)**16, x) == -1/15*(b*c-a*d)**7/(b**8*(a + b*x)**15)-1/2*d*(b*c-a*d)**6/(b**8*(a + b*x)**14)-21/13*d**2*(b*c-a*d)**5/(b**8*(a + b*x)**13)-35/12*d**3*(b*c-a*d)**4/(b**8*(a + b*x)**12)-35/11*d**4*(b*c-a*d)**3/(b**8*(a + b*x)**11)-21/10*d**5*(b*c-a*d)**2/(b**8*(a + b*x)**10)-7/9*d**6*(b*c-a*d)/(b**8*(a + b*x)**9)-1/8*d**7/(b**8*(a + b*x)**8) +assert rubi_integrate((a + b*x)**12*(c + d*x)**10, x) == 1/13*(b*c-a*d)**10*(a + b*x)**13/b**11 + 5/7*d*(b*c-a*d)**9*(a + b*x)**14/b**11 + 3*d**2*(b*c-a*d)**8*(a + b*x)**15/b**11 + 15/2*d**3*(b*c-a*d)**7*(a + b*x)**16/b**11 + 210/17*d**4*(b*c-a*d)**6*(a + b*x)**17/b**11 + 14*d**5*(b*c-a*d)**5*(a + b*x)**18/b**11 + 210/19*d**6*(b*c-a*d)**4*(a + b*x)**19/b**11 + 6*d**7*(b*c-a*d)**3*(a + b*x)**20/b**11 + 15/7*d**8*(b*c-a*d)**2*(a + b*x)**21/b**11 + 5/11*d**9*(b*c-a*d)*(a + b*x)**22/b**11 + 1/23*d**10*(a + b*x)**23/b**11 +assert rubi_integrate((a + b*x)**11*(c + d*x)**10, x) == 1/12*(b*c-a*d)**10*(a + b*x)**12/b**11 + 10/13*d*(b*c-a*d)**9*(a + b*x)**13/b**11 + 45/14*d**2*(b*c-a*d)**8*(a + b*x)**14/b**11 + 8*d**3*(b*c-a*d)**7*(a + b*x)**15/b**11 + 105/8*d**4*(b*c-a*d)**6*(a + b*x)**16/b**11 + 252/17*d**5*(b*c-a*d)**5*(a + b*x)**17/b**11 + 35/3*d**6*(b*c-a*d)**4*(a + b*x)**18/b**11 + 120/19*d**7*(b*c-a*d)**3*(a + b*x)**19/b**11 + 9/4*d**8*(b*c-a*d)**2*(a + b*x)**20/b**11 + 10/21*d**9*(b*c-a*d)*(a + b*x)**21/b**11 + 1/22*d**10*(a + b*x)**22/b**11 +assert rubi_integrate((a + b*x)**10*(c + d*x)**10, x) == 1/11*(b*c-a*d)**10*(a + b*x)**11/b**11 + 5/6*d*(b*c-a*d)**9*(a + b*x)**12/b**11 + 45/13*d**2*(b*c-a*d)**8*(a + b*x)**13/b**11 + 60/7*d**3*(b*c-a*d)**7*(a + b*x)**14/b**11 + 14*d**4*(b*c-a*d)**6*(a + b*x)**15/b**11 + 63/4*d**5*(b*c-a*d)**5*(a + b*x)**16/b**11 + 210/17*d**6*(b*c-a*d)**4*(a + b*x)**17/b**11 + 20/3*d**7*(b*c-a*d)**3*(a + b*x)**18/b**11 + 45/19*d**8*(b*c-a*d)**2*(a + b*x)**19/b**11 + 1/2*d**9*(b*c-a*d)*(a + b*x)**20/b**11 + 1/21*d**10*(a + b*x)**21/b**11 +assert rubi_integrate((a + b*x)**9*(c + d*x)**10, x) == -1/11*(b*c-a*d)**9*(c + d*x)**11/d**10 + 3/4*b*(b*c-a*d)**8*(c + d*x)**12/d**10-36/13*b**2*(b*c-a*d)**7*(c + d*x)**13/d**10 + 6*b**3*(b*c-a*d)**6*(c + d*x)**14/d**10-42/5*b**4*(b*c-a*d)**5*(c + d*x)**15/d**10 + 63/8*b**5*(b*c-a*d)**4*(c + d*x)**16/d**10-84/17*b**6*(b*c-a*d)**3*(c + d*x)**17/d**10 + 2*b**7*(b*c-a*d)**2*(c + d*x)**18/d**10-9/19*b**8*(b*c-a*d)*(c + d*x)**19/d**10 + 1/20*b**9*(c + d*x)**20/d**10 +assert rubi_integrate((a + b*x)**8*(c + d*x)**10, x) == 1/11*(b*c-a*d)**8*(c + d*x)**11/d**9-2/3*b*(b*c-a*d)**7*(c + d*x)**12/d**9 + 28/13*b**2*(b*c-a*d)**6*(c + d*x)**13/d**9-4*b**3*(b*c-a*d)**5*(c + d*x)**14/d**9 + 14/3*b**4*(b*c-a*d)**4*(c + d*x)**15/d**9-7/2*b**5*(b*c-a*d)**3*(c + d*x)**16/d**9 + 28/17*b**6*(b*c-a*d)**2*(c + d*x)**17/d**9-4/9*b**7*(b*c-a*d)*(c + d*x)**18/d**9 + 1/19*b**8*(c + d*x)**19/d**9 +assert rubi_integrate((a + b*x)**7*(c + d*x)**10, x) == -1/11*(b*c-a*d)**7*(c + d*x)**11/d**8 + 7/12*b*(b*c-a*d)**6*(c + d*x)**12/d**8-21/13*b**2*(b*c-a*d)**5*(c + d*x)**13/d**8 + 5/2*b**3*(b*c-a*d)**4*(c + d*x)**14/d**8-7/3*b**4*(b*c-a*d)**3*(c + d*x)**15/d**8 + 21/16*b**5*(b*c-a*d)**2*(c + d*x)**16/d**8-7/17*b**6*(b*c-a*d)*(c + d*x)**17/d**8 + 1/18*b**7*(c + d*x)**18/d**8 +assert rubi_integrate((a + b*x)**6*(c + d*x)**10, x) == 1/11*(b*c-a*d)**6*(c + d*x)**11/d**7-1/2*b*(b*c-a*d)**5*(c + d*x)**12/d**7 + 15/13*b**2*(b*c-a*d)**4*(c + d*x)**13/d**7-10/7*b**3*(b*c-a*d)**3*(c + d*x)**14/d**7 + b**4*(b*c-a*d)**2*(c + d*x)**15/d**7-3/8*b**5*(b*c-a*d)*(c + d*x)**16/d**7 + 1/17*b**6*(c + d*x)**17/d**7 +assert rubi_integrate((a + b*x)**5*(c + d*x)**10, x) == -1/11*(b*c-a*d)**5*(c + d*x)**11/d**6 + 5/12*b*(b*c-a*d)**4*(c + d*x)**12/d**6-10/13*b**2*(b*c-a*d)**3*(c + d*x)**13/d**6 + 5/7*b**3*(b*c-a*d)**2*(c + d*x)**14/d**6-1/3*b**4*(b*c-a*d)*(c + d*x)**15/d**6 + 1/16*b**5*(c + d*x)**16/d**6 +assert rubi_integrate((a + b*x)**4*(c + d*x)**10, x) == 1/11*(b*c-a*d)**4*(c + d*x)**11/d**5-1/3*b*(b*c-a*d)**3*(c + d*x)**12/d**5 + 6/13*b**2*(b*c-a*d)**2*(c + d*x)**13/d**5-2/7*b**3*(b*c-a*d)*(c + d*x)**14/d**5 + 1/15*b**4*(c + d*x)**15/d**5 +assert rubi_integrate((a + b*x)**3*(c + d*x)**10, x) == -1/11*(b*c-a*d)**3*(c + d*x)**11/d**4 + 1/4*b*(b*c-a*d)**2*(c + d*x)**12/d**4-3/13*b**2*(b*c-a*d)*(c + d*x)**13/d**4 + 1/14*b**3*(c + d*x)**14/d**4 +assert rubi_integrate((a + b*x)**2*(c + d*x)**10, x) == 1/11*(b*c-a*d)**2*(c + d*x)**11/d**3-1/6*b*(b*c-a*d)*(c + d*x)**12/d**3 + 1/13*b**2*(c + d*x)**13/d**3 +assert rubi_integrate((a + b*x)*(c + d*x)**10, x) == -1/11*(b*c-a*d)*(c + d*x)**11/d**2 + 1/12*b*(c + d*x)**12/d**2 +assert rubi_integrate((c + d*x)**10, x) == 1/11*(c + d*x)**11/d +assert rubi_integrate((c + d*x)**10/(a + b*x), x) == d*(b*c-a*d)**9*x/b**10 + 1/2*(b*c-a*d)**8*(c + d*x)**2/b**9 + 1/3*(b*c-a*d)**7*(c + d*x)**3/b**8 + 1/4*(b*c-a*d)**6*(c + d*x)**4/b**7 + 1/5*(b*c-a*d)**5*(c + d*x)**5/b**6 + 1/6*(b*c-a*d)**4*(c + d*x)**6/b**5 + 1/7*(b*c-a*d)**3*(c + d*x)**7/b**4 + 1/8*(b*c-a*d)**2*(c + d*x)**8/b**3 + 1/9*(b*c-a*d)*(c + d*x)**9/b**2 + 1/10*(c + d*x)**10/b + (b*c-a*d)**10*log(a + b*x)/b**11 +assert rubi_integrate((c + d*x)**10/(a + b*x)**2, x) == 45*d**2*(b*c-a*d)**8*x/b**10-(b*c-a*d)**10/(b**11*(a + b*x)) + 60*d**3*(b*c-a*d)**7*(a + b*x)**2/b**11 + 70*d**4*(b*c-a*d)**6*(a + b*x)**3/b**11 + 63*d**5*(b*c-a*d)**5*(a + b*x)**4/b**11 + 42*d**6*(b*c-a*d)**4*(a + b*x)**5/b**11 + 20*d**7*(b*c-a*d)**3*(a + b*x)**6/b**11 + 45/7*d**8*(b*c-a*d)**2*(a + b*x)**7/b**11 + 5/4*d**9*(b*c-a*d)*(a + b*x)**8/b**11 + 1/9*d**10*(a + b*x)**9/b**11 + 10*d*(b*c-a*d)**9*log(a + b*x)/b**11 +assert rubi_integrate((c + d*x)**10/(a + b*x)**3, x) == 120*d**3*(b*c-a*d)**7*x/b**10-1/2*(b*c-a*d)**10/(b**11*(a + b*x)**2)-10*d*(b*c-a*d)**9/(b**11*(a + b*x)) + 105*d**4*(b*c-a*d)**6*(a + b*x)**2/b**11 + 84*d**5*(b*c-a*d)**5*(a + b*x)**3/b**11 + 105/2*d**6*(b*c-a*d)**4*(a + b*x)**4/b**11 + 24*d**7*(b*c-a*d)**3*(a + b*x)**5/b**11 + 15/2*d**8*(b*c-a*d)**2*(a + b*x)**6/b**11 + 10/7*d**9*(b*c-a*d)*(a + b*x)**7/b**11 + 1/8*d**10*(a + b*x)**8/b**11 + 45*d**2*(b*c-a*d)**8*log(a + b*x)/b**11 +assert rubi_integrate((c + d*x)**10/(a + b*x)**4, x) == 210*d**4*(b*c-a*d)**6*x/b**10-1/3*(b*c-a*d)**10/(b**11*(a + b*x)**3)-5*d*(b*c-a*d)**9/(b**11*(a + b*x)**2)-45*d**2*(b*c-a*d)**8/(b**11*(a + b*x)) + 126*d**5*(b*c-a*d)**5*(a + b*x)**2/b**11 + 70*d**6*(b*c-a*d)**4*(a + b*x)**3/b**11 + 30*d**7*(b*c-a*d)**3*(a + b*x)**4/b**11 + 9*d**8*(b*c-a*d)**2*(a + b*x)**5/b**11 + 5/3*d**9*(b*c-a*d)*(a + b*x)**6/b**11 + 1/7*d**10*(a + b*x)**7/b**11 + 120*d**3*(b*c-a*d)**7*log(a + b*x)/b**11 +assert rubi_integrate((c + d*x)**10/(a + b*x)**5, x) == 252*d**5*(b*c-a*d)**5*x/b**10-1/4*(b*c-a*d)**10/(b**11*(a + b*x)**4)-10/3*d*(b*c-a*d)**9/(b**11*(a + b*x)**3)-45/2*d**2*(b*c-a*d)**8/(b**11*(a + b*x)**2)-120*d**3*(b*c-a*d)**7/(b**11*(a + b*x)) + 105*d**6*(b*c-a*d)**4*(a + b*x)**2/b**11 + 40*d**7*(b*c-a*d)**3*(a + b*x)**3/b**11 + 45/4*d**8*(b*c-a*d)**2*(a + b*x)**4/b**11 + 2*d**9*(b*c-a*d)*(a + b*x)**5/b**11 + 1/6*d**10*(a + b*x)**6/b**11 + 210*d**4*(b*c-a*d)**6*log(a + b*x)/b**11 +assert rubi_integrate((c + d*x)**10/(a + b*x)**6, x) == 210*d**6*(b*c-a*d)**4*x/b**10-1/5*(b*c-a*d)**10/(b**11*(a + b*x)**5)-5/2*d*(b*c-a*d)**9/(b**11*(a + b*x)**4)-15*d**2*(b*c-a*d)**8/(b**11*(a + b*x)**3)-60*d**3*(b*c-a*d)**7/(b**11*(a + b*x)**2)-210*d**4*(b*c-a*d)**6/(b**11*(a + b*x)) + 60*d**7*(b*c-a*d)**3*(a + b*x)**2/b**11 + 15*d**8*(b*c-a*d)**2*(a + b*x)**3/b**11 + 5/2*d**9*(b*c-a*d)*(a + b*x)**4/b**11 + 1/5*d**10*(a + b*x)**5/b**11 + 252*d**5*(b*c-a*d)**5*log(a + b*x)/b**11 +assert rubi_integrate((c + d*x)**10/(a + b*x)**7, x) == 120*d**7*(b*c-a*d)**3*x/b**10-1/6*(b*c-a*d)**10/(b**11*(a + b*x)**6)-2*d*(b*c-a*d)**9/(b**11*(a + b*x)**5)-45/4*d**2*(b*c-a*d)**8/(b**11*(a + b*x)**4)-40*d**3*(b*c-a*d)**7/(b**11*(a + b*x)**3)-105*d**4*(b*c-a*d)**6/(b**11*(a + b*x)**2)-252*d**5*(b*c-a*d)**5/(b**11*(a + b*x)) + 45/2*d**8*(b*c-a*d)**2*(a + b*x)**2/b**11 + 10/3*d**9*(b*c-a*d)*(a + b*x)**3/b**11 + 1/4*d**10*(a + b*x)**4/b**11 + 210*d**6*(b*c-a*d)**4*log(a + b*x)/b**11 +assert rubi_integrate((c + d*x)**10/(a + b*x)**8, x) == 45*d**8*(b*c-a*d)**2*x/b**10-1/7*(b*c-a*d)**10/(b**11*(a + b*x)**7)-5/3*d*(b*c-a*d)**9/(b**11*(a + b*x)**6)-9*d**2*(b*c-a*d)**8/(b**11*(a + b*x)**5)-30*d**3*(b*c-a*d)**7/(b**11*(a + b*x)**4)-70*d**4*(b*c-a*d)**6/(b**11*(a + b*x)**3)-126*d**5*(b*c-a*d)**5/(b**11*(a + b*x)**2)-210*d**6*(b*c-a*d)**4/(b**11*(a + b*x)) + 5*d**9*(b*c-a*d)*(a + b*x)**2/b**11 + 1/3*d**10*(a + b*x)**3/b**11 + 120*d**7*(b*c-a*d)**3*log(a + b*x)/b**11 +assert rubi_integrate((c + d*x)**10/(a + b*x)**9, x) == d**9*(10*b*c-9*a*d)*x/b**10 + 1/2*d**10*x**2/b**9-1/8*(b*c-a*d)**10/(b**11*(a + b*x)**8)-10/7*d*(b*c-a*d)**9/(b**11*(a + b*x)**7)-15/2*d**2*(b*c-a*d)**8/(b**11*(a + b*x)**6)-24*d**3*(b*c-a*d)**7/(b**11*(a + b*x)**5)-105/2*d**4*(b*c-a*d)**6/(b**11*(a + b*x)**4)-84*d**5*(b*c-a*d)**5/(b**11*(a + b*x)**3)-105*d**6*(b*c-a*d)**4/(b**11*(a + b*x)**2)-120*d**7*(b*c-a*d)**3/(b**11*(a + b*x)) + 45*d**8*(b*c-a*d)**2*log(a + b*x)/b**11 +assert rubi_integrate((c + d*x)**10/(a + b*x)**10, x) == d**10*x/b**10-1/9*(b*c-a*d)**10/(b**11*(a + b*x)**9)-5/4*d*(b*c-a*d)**9/(b**11*(a + b*x)**8)-45/7*d**2*(b*c-a*d)**8/(b**11*(a + b*x)**7)-20*d**3*(b*c-a*d)**7/(b**11*(a + b*x)**6)-42*d**4*(b*c-a*d)**6/(b**11*(a + b*x)**5)-63*d**5*(b*c-a*d)**5/(b**11*(a + b*x)**4)-70*d**6*(b*c-a*d)**4/(b**11*(a + b*x)**3)-60*d**7*(b*c-a*d)**3/(b**11*(a + b*x)**2)-45*d**8*(b*c-a*d)**2/(b**11*(a + b*x)) + 10*d**9*(b*c-a*d)*log(a + b*x)/b**11 +assert rubi_integrate((c + d*x)**10/(a + b*x)**11, x) == -1/10*(b*c-a*d)**10/(b**11*(a + b*x)**10)-10/9*d*(b*c-a*d)**9/(b**11*(a + b*x)**9)-45/8*d**2*(b*c-a*d)**8/(b**11*(a + b*x)**8)-120/7*d**3*(b*c-a*d)**7/(b**11*(a + b*x)**7)-35*d**4*(b*c-a*d)**6/(b**11*(a + b*x)**6)-252/5*d**5*(b*c-a*d)**5/(b**11*(a + b*x)**5)-105/2*d**6*(b*c-a*d)**4/(b**11*(a + b*x)**4)-40*d**7*(b*c-a*d)**3/(b**11*(a + b*x)**3)-45/2*d**8*(b*c-a*d)**2/(b**11*(a + b*x)**2)-10*d**9*(b*c-a*d)/(b**11*(a + b*x)) + d**10*log(a + b*x)/b**11 +assert rubi_integrate((c + d*x)**10/(a + b*x)**12, x) == -1/11*(c + d*x)**11/((b*c-a*d)*(a + b*x)**11) +assert rubi_integrate((c + d*x)**10/(a + b*x)**13, x) == -1/12*(c + d*x)**11/((b*c-a*d)*(a + b*x)**12) + 1/132*d*(c + d*x)**11/((b*c-a*d)**2*(a + b*x)**11) +assert rubi_integrate((c + d*x)**10/(a + b*x)**14, x) == -1/13*(c + d*x)**11/((b*c-a*d)*(a + b*x)**13) + 1/78*d*(c + d*x)**11/((b*c-a*d)**2*(a + b*x)**12)-1/858*d**2*(c + d*x)**11/((b*c-a*d)**3*(a + b*x)**11) +assert rubi_integrate((c + d*x)**10/(a + b*x)**15, x) == -1/14*(c + d*x)**11/((b*c-a*d)*(a + b*x)**14) + 3/182*d*(c + d*x)**11/((b*c-a*d)**2*(a + b*x)**13)-1/364*d**2*(c + d*x)**11/((b*c-a*d)**3*(a + b*x)**12) + 1/4004*d**3*(c + d*x)**11/((b*c-a*d)**4*(a + b*x)**11) +assert rubi_integrate((c + d*x)**10/(a + b*x)**16, x) == -1/15*(c + d*x)**11/((b*c-a*d)*(a + b*x)**15) + 2/105*d*(c + d*x)**11/((b*c-a*d)**2*(a + b*x)**14)-2/455*d**2*(c + d*x)**11/((b*c-a*d)**3*(a + b*x)**13) + 1/1365*d**3*(c + d*x)**11/((b*c-a*d)**4*(a + b*x)**12)-1/15015*d**4*(c + d*x)**11/((b*c-a*d)**5*(a + b*x)**11) +assert rubi_integrate((c + d*x)**10/(a + b*x)**17, x) == -1/16*(c + d*x)**11/((b*c-a*d)*(a + b*x)**16) + 1/48*d*(c + d*x)**11/((b*c-a*d)**2*(a + b*x)**15)-1/168*d**2*(c + d*x)**11/((b*c-a*d)**3*(a + b*x)**14) + 1/728*d**3*(c + d*x)**11/((b*c-a*d)**4*(a + b*x)**13)-1/4368*d**4*(c + d*x)**11/((b*c-a*d)**5*(a + b*x)**12) + 1/48048*d**5*(c + d*x)**11/((b*c-a*d)**6*(a + b*x)**11) +assert rubi_integrate((c + d*x)**10/(a + b*x)**18, x) == -1/17*(c + d*x)**11/((b*c-a*d)*(a + b*x)**17) + 3/136*d*(c + d*x)**11/((b*c-a*d)**2*(a + b*x)**16)-1/136*d**2*(c + d*x)**11/((b*c-a*d)**3*(a + b*x)**15) + 1/476*d**3*(c + d*x)**11/((b*c-a*d)**4*(a + b*x)**14)-3/6188*d**4*(c + d*x)**11/((b*c-a*d)**5*(a + b*x)**13) + 1/12376*d**5*(c + d*x)**11/((b*c-a*d)**6*(a + b*x)**12)-1/136136*d**6*(c + d*x)**11/((b*c-a*d)**7*(a + b*x)**11) +assert rubi_integrate((c + d*x)**10/(a + b*x)**19, x) == -1/18*(c + d*x)**11/((b*c-a*d)*(a + b*x)**18) + 7/306*d*(c + d*x)**11/((b*c-a*d)**2*(a + b*x)**17)-7/816*d**2*(c + d*x)**11/((b*c-a*d)**3*(a + b*x)**16) + 7/2448*d**3*(c + d*x)**11/((b*c-a*d)**4*(a + b*x)**15)-1/1224*d**4*(c + d*x)**11/((b*c-a*d)**5*(a + b*x)**14) + 1/5304*d**5*(c + d*x)**11/((b*c-a*d)**6*(a + b*x)**13)-1/31824*d**6*(c + d*x)**11/((b*c-a*d)**7*(a + b*x)**12) + 1/350064*d**7*(c + d*x)**11/((b*c-a*d)**8*(a + b*x)**11) +assert rubi_integrate((c + d*x)**10/(a + b*x)**20, x) == -1/19*(b*c-a*d)**10/(b**11*(a + b*x)**19)-5/9*d*(b*c-a*d)**9/(b**11*(a + b*x)**18)-45/17*d**2*(b*c-a*d)**8/(b**11*(a + b*x)**17)-15/2*d**3*(b*c-a*d)**7/(b**11*(a + b*x)**16)-14*d**4*(b*c-a*d)**6/(b**11*(a + b*x)**15)-18*d**5*(b*c-a*d)**5/(b**11*(a + b*x)**14)-210/13*d**6*(b*c-a*d)**4/(b**11*(a + b*x)**13)-10*d**7*(b*c-a*d)**3/(b**11*(a + b*x)**12)-45/11*d**8*(b*c-a*d)**2/(b**11*(a + b*x)**11)-d**9*(b*c-a*d)/(b**11*(a + b*x)**10)-1/9*d**10/(b**11*(a + b*x)**9) +assert rubi_integrate((c + d*x)**10/(a + b*x)**21, x) == -1/20*(b*c-a*d)**10/(b**11*(a + b*x)**20)-10/19*d*(b*c-a*d)**9/(b**11*(a + b*x)**19)-5/2*d**2*(b*c-a*d)**8/(b**11*(a + b*x)**18)-120/17*d**3*(b*c-a*d)**7/(b**11*(a + b*x)**17)-105/8*d**4*(b*c-a*d)**6/(b**11*(a + b*x)**16)-84/5*d**5*(b*c-a*d)**5/(b**11*(a + b*x)**15)-15*d**6*(b*c-a*d)**4/(b**11*(a + b*x)**14)-120/13*d**7*(b*c-a*d)**3/(b**11*(a + b*x)**13)-15/4*d**8*(b*c-a*d)**2/(b**11*(a + b*x)**12)-10/11*d**9*(b*c-a*d)/(b**11*(a + b*x)**11)-1/10*d**10/(b**11*(a + b*x)**10) +assert rubi_integrate((c + d*x)**10/(a + b*x)**22, x) == -1/21*(b*c-a*d)**10/(b**11*(a + b*x)**21)-1/2*d*(b*c-a*d)**9/(b**11*(a + b*x)**20)-45/19*d**2*(b*c-a*d)**8/(b**11*(a + b*x)**19)-20/3*d**3*(b*c-a*d)**7/(b**11*(a + b*x)**18)-210/17*d**4*(b*c-a*d)**6/(b**11*(a + b*x)**17)-63/4*d**5*(b*c-a*d)**5/(b**11*(a + b*x)**16)-14*d**6*(b*c-a*d)**4/(b**11*(a + b*x)**15)-60/7*d**7*(b*c-a*d)**3/(b**11*(a + b*x)**14)-45/13*d**8*(b*c-a*d)**2/(b**11*(a + b*x)**13)-5/6*d**9*(b*c-a*d)/(b**11*(a + b*x)**12)-1/11*d**10/(b**11*(a + b*x)**11) +# {(a + b*x)**m*(c + d*x)**15, x, 2, ((b*c - a*d)**15*(a + b*x)**(1 + m))/(b**16*(1 + m)) + (15*d*(b*c - a*d)**14*(a + b*x)**(2 + m))/(b**16*(2 + m)) + (105*d**2*(b*c - a*d)**13*(a + b*x)**(3 + m))/(b**16*(3 + m)) + (455*d**3*(b*c - a*d)**12*(a + b*x)**(4 + m))/(b**16*(4 + m)) + (1365*d**4*(b*c - a*d)**11*(a + b*x)**(5 + m))/(b**16*(5 + m)) + (3003*d**5*(b*c - a*d)**10*(a + b*x)**(6 + m))/(b**16*(6 + m)) + (5005*d**6*(b*c - a*d)**9*(a + b*x)**(7 + m))/(b**16*(7 + m)) + (6435*d**7*(b*c - a*d)**8*(a + b*x)**(8 + m))/(b**16*(8 + m)) + (6435*d**8*(b*c - a*d)**7*(a + b*x)**(9 + m))/(b**16*(9 + m)) + (5005*d**9*(b*c - a*d)**6*(a + b*x)**(10 + m))/(b**16*(10 + m)) + (3003*d**10*(b*c - a*d)**5*(a + b*x)**(11 + m))/(b**16*(11 + m)) + (1365*d**11*(b*c - a*d)**4*(a + b*x)**(12 + m))/(b**16*(12 + m)) + (455*d**12*(b*c - a*d)**3*(a + b*x)**(13 + m))/(b**16*(13 + m)) + (105*d**13*(b*c - a*d)**2*(a + b*x)**(14 + m))/(b**16*(14 + m)) + (15*d**14*(b*c - a*d)*(a + b*x)**(15 + m))/(b**16*(15 + m)) + (d**15*(a + b*x)**(16 + m))/(b**16*(16 + m))} +# {(a + b*x)**17*(c + d*x)**15, x, 2, ((b*c - a*d)**15*(a + b*x)**18)/(18*b**16) + (15*d*(b*c - a*d)**14*(a + b*x)**19)/(19*b**16) + (21*d**2*(b*c - a*d)**13*(a + b*x)**20)/(4*b**16) + (65*d**3*(b*c - a*d)**12*(a + b*x)**21)/(3*b**16) + (1365*d**4*(b*c - a*d)**11*(a + b*x)**22)/(22*b**16) + (3003*d**5*(b*c - a*d)**10*(a + b*x)**23)/(23*b**16) + (5005*d**6*(b*c - a*d)**9*(a + b*x)**24)/(24*b**16) + (1287*d**7*(b*c - a*d)**8*(a + b*x)**25)/(5*b**16) + (495*d**8*(b*c - a*d)**7*(a + b*x)**26)/(2*b**16) + (5005*d**9*(b*c - a*d)**6*(a + b*x)**27)/(27*b**16) + (429*d**10*(b*c - a*d)**5*(a + b*x)**28)/(4*b**16) + (1365*d**11*(b*c - a*d)**4*(a + b*x)**29)/(29*b**16) + (91*d**12*(b*c - a*d)**3*(a + b*x)**30)/(6*b**16) + (105*d**13*(b*c - a*d)**2*(a + b*x)**31)/(31*b**16) + (15*d**14*(b*c - a*d)*(a + b*x)**32)/(32*b**16) + (d**15*(a + b*x)**33)/(33*b**16)} +# {(a + b*x)**16*(c + d*x)**15, x, 2, ((b*c - a*d)**15*(a + b*x)**17)/(17*b**16) + (5*d*(b*c - a*d)**14*(a + b*x)**18)/(6*b**16) + (105*d**2*(b*c - a*d)**13*(a + b*x)**19)/(19*b**16) + (91*d**3*(b*c - a*d)**12*(a + b*x)**20)/(4*b**16) + (65*d**4*(b*c - a*d)**11*(a + b*x)**21)/b**16 + (273*d**5*(b*c - a*d)**10*(a + b*x)**22)/(2*b**16) + (5005*d**6*(b*c - a*d)**9*(a + b*x)**23)/(23*b**16) + (2145*d**7*(b*c - a*d)**8*(a + b*x)**24)/(8*b**16) + (1287*d**8*(b*c - a*d)**7*(a + b*x)**25)/(5*b**16) + (385*d**9*(b*c - a*d)**6*(a + b*x)**26)/(2*b**16) + (1001*d**10*(b*c - a*d)**5*(a + b*x)**27)/(9*b**16) + (195*d**11*(b*c - a*d)**4*(a + b*x)**28)/(4*b**16) + (455*d**12*(b*c - a*d)**3*(a + b*x)**29)/(29*b**16) + (7*d**13*(b*c - a*d)**2*(a + b*x)**30)/(2*b**16) + (15*d**14*(b*c - a*d)*(a + b*x)**31)/(31*b**16) + (d**15*(a + b*x)**32)/(32*b**16)} +# {(a + b*x)**15*(c + d*x)**15, x, 2, ((b*c - a*d)**15*(a + b*x)**16)/(16*b**16) + (15*d*(b*c - a*d)**14*(a + b*x)**17)/(17*b**16) + (35*d**2*(b*c - a*d)**13*(a + b*x)**18)/(6*b**16) + (455*d**3*(b*c - a*d)**12*(a + b*x)**19)/(19*b**16) + (273*d**4*(b*c - a*d)**11*(a + b*x)**20)/(4*b**16) + (143*d**5*(b*c - a*d)**10*(a + b*x)**21)/b**16 + (455*d**6*(b*c - a*d)**9*(a + b*x)**22)/(2*b**16) + (6435*d**7*(b*c - a*d)**8*(a + b*x)**23)/(23*b**16) + (2145*d**8*(b*c - a*d)**7*(a + b*x)**24)/(8*b**16) + (1001*d**9*(b*c - a*d)**6*(a + b*x)**25)/(5*b**16) + (231*d**10*(b*c - a*d)**5*(a + b*x)**26)/(2*b**16) + (455*d**11*(b*c - a*d)**4*(a + b*x)**27)/(9*b**16) + (65*d**12*(b*c - a*d)**3*(a + b*x)**28)/(4*b**16) + (105*d**13*(b*c - a*d)**2*(a + b*x)**29)/(29*b**16) + (d**14*(b*c - a*d)*(a + b*x)**30)/(2*b**16) + (d**15*(a + b*x)**31)/(31*b**16)} +# {(a + b*x)**14*(c + d*x)**15, x, 2, ((b*c - a*d)**14*(c + d*x)**16)/(16*d**15) - (14*b*(b*c - a*d)**13*(c + d*x)**17)/(17*d**15) + (91*b**2*(b*c - a*d)**12*(c + d*x)**18)/(18*d**15) - (364*b**3*(b*c - a*d)**11*(c + d*x)**19)/(19*d**15) + (1001*b**4*(b*c - a*d)**10*(c + d*x)**20)/(20*d**15) - (286*b**5*(b*c - a*d)**9*(c + d*x)**21)/(3*d**15) + (273*b**6*(b*c - a*d)**8*(c + d*x)**22)/(2*d**15) - (3432*b**7*(b*c - a*d)**7*(c + d*x)**23)/(23*d**15) + (1001*b**8*(b*c - a*d)**6*(c + d*x)**24)/(8*d**15) - (2002*b**9*(b*c - a*d)**5*(c + d*x)**25)/(25*d**15) + (77*b**10*(b*c - a*d)**4*(c + d*x)**26)/(2*d**15) - (364*b**11*(b*c - a*d)**3*(c + d*x)**27)/(27*d**15) + (13*b**12*(b*c - a*d)**2*(c + d*x)**28)/(4*d**15) - (14*b**13*(b*c - a*d)*(c + d*x)**29)/(29*d**15) + (b**14*(c + d*x)**30)/(30*d**15)} +# {(a + b*x)**13*(c + d*x)**15, x, 2, -(((b*c - a*d)**13*(c + d*x)**16)/(16*d**14)) + (13*b*(b*c - a*d)**12*(c + d*x)**17)/(17*d**14) - (13*b**2*(b*c - a*d)**11*(c + d*x)**18)/(3*d**14) + (286*b**3*(b*c - a*d)**10*(c + d*x)**19)/(19*d**14) - (143*b**4*(b*c - a*d)**9*(c + d*x)**20)/(4*d**14) + (429*b**5*(b*c - a*d)**8*(c + d*x)**21)/(7*d**14) - (78*b**6*(b*c - a*d)**7*(c + d*x)**22)/d**14 + (1716*b**7*(b*c - a*d)**6*(c + d*x)**23)/(23*d**14) - (429*b**8*(b*c - a*d)**5*(c + d*x)**24)/(8*d**14) + (143*b**9*(b*c - a*d)**4*(c + d*x)**25)/(5*d**14) - (11*b**10*(b*c - a*d)**3*(c + d*x)**26)/d**14 + (26*b**11*(b*c - a*d)**2*(c + d*x)**27)/(9*d**14) - (13*b**12*(b*c - a*d)*(c + d*x)**28)/(28*d**14) + (b**13*(c + d*x)**29)/(29*d**14)} +# {(a + b*x)**12*(c + d*x)**15, x, 2, ((b*c - a*d)**12*(c + d*x)**16)/(16*d**13) - (12*b*(b*c - a*d)**11*(c + d*x)**17)/(17*d**13) + (11*b**2*(b*c - a*d)**10*(c + d*x)**18)/(3*d**13) - (220*b**3*(b*c - a*d)**9*(c + d*x)**19)/(19*d**13) + (99*b**4*(b*c - a*d)**8*(c + d*x)**20)/(4*d**13) - (264*b**5*(b*c - a*d)**7*(c + d*x)**21)/(7*d**13) + (42*b**6*(b*c - a*d)**6*(c + d*x)**22)/d**13 - (792*b**7*(b*c - a*d)**5*(c + d*x)**23)/(23*d**13) + (165*b**8*(b*c - a*d)**4*(c + d*x)**24)/(8*d**13) - (44*b**9*(b*c - a*d)**3*(c + d*x)**25)/(5*d**13) + (33*b**10*(b*c - a*d)**2*(c + d*x)**26)/(13*d**13) - (4*b**11*(b*c - a*d)*(c + d*x)**27)/(9*d**13) + (b**12*(c + d*x)**28)/(28*d**13)} +# {(a + b*x)**11*(c + d*x)**15, x, 2, -((b*c - a*d)**11*(c + d*x)**16)/(16*d**12) + (11*b*(b*c - a*d)**10*(c + d*x)**17)/(17*d**12) - (55*b**2*(b*c - a*d)**9*(c + d*x)**18)/(18*d**12) + (165*b**3*(b*c - a*d)**8*(c + d*x)**19)/(19*d**12) - (33*b**4*(b*c - a*d)**7*(c + d*x)**20)/(2*d**12) + (22*b**5*(b*c - a*d)**6*(c + d*x)**21)/d**12 - (21*b**6*(b*c - a*d)**5*(c + d*x)**22)/d**12 + (330*b**7*(b*c - a*d)**4*(c + d*x)**23)/(23*d**12) - (55*b**8*(b*c - a*d)**3*(c + d*x)**24)/(8*d**12) + (11*b**9*(b*c - a*d)**2*(c + d*x)**25)/(5*d**12) - (11*b**10*(b*c - a*d)*(c + d*x)**26)/(26*d**12) + (b**11*(c + d*x)**27)/(27*d**12)} +# {(a + b*x)**10*(c + d*x)**15, x, 2, ((b*c - a*d)**10*(c + d*x)**16)/(16*d**11) - (10*b*(b*c - a*d)**9*(c + d*x)**17)/(17*d**11) + (5*b**2*(b*c - a*d)**8*(c + d*x)**18)/(2*d**11) - (120*b**3*(b*c - a*d)**7*(c + d*x)**19)/(19*d**11) + (21*b**4*(b*c - a*d)**6*(c + d*x)**20)/(2*d**11) - (12*b**5*(b*c - a*d)**5*(c + d*x)**21)/d**11 + (105*b**6*(b*c - a*d)**4*(c + d*x)**22)/(11*d**11) - (120*b**7*(b*c - a*d)**3*(c + d*x)**23)/(23*d**11) + (15*b**8*(b*c - a*d)**2*(c + d*x)**24)/(8*d**11) - (2*b**9*(b*c - a*d)*(c + d*x)**25)/(5*d**11) + (b**10*(c + d*x)**26)/(26*d**11)} +# {(a + b*x)**9*(c + d*x)**15, x, 2, -((b*c - a*d)**9*(c + d*x)**16)/(16*d**10) + (9*b*(b*c - a*d)**8*(c + d*x)**17)/(17*d**10) - (2*b**2*(b*c - a*d)**7*(c + d*x)**18)/d**10 + (84*b**3*(b*c - a*d)**6*(c + d*x)**19)/(19*d**10) - (63*b**4*(b*c - a*d)**5*(c + d*x)**20)/(10*d**10) + (6*b**5*(b*c - a*d)**4*(c + d*x)**21)/d**10 - (42*b**6*(b*c - a*d)**3*(c + d*x)**22)/(11*d**10) + (36*b**7*(b*c - a*d)**2*(c + d*x)**23)/(23*d**10) - (3*b**8*(b*c - a*d)*(c + d*x)**24)/(8*d**10) + (b**9*(c + d*x)**25)/(25*d**10)} +# {(a + b*x)**8*(c + d*x)**15, x, 2, ((b*c - a*d)**8*(c + d*x)**16)/(16*d**9) - (8*b*(b*c - a*d)**7*(c + d*x)**17)/(17*d**9) + (14*b**2*(b*c - a*d)**6*(c + d*x)**18)/(9*d**9) - (56*b**3*(b*c - a*d)**5*(c + d*x)**19)/(19*d**9) + (7*b**4*(b*c - a*d)**4*(c + d*x)**20)/(2*d**9) - (8*b**5*(b*c - a*d)**3*(c + d*x)**21)/(3*d**9) + (14*b**6*(b*c - a*d)**2*(c + d*x)**22)/(11*d**9) - (8*b**7*(b*c - a*d)*(c + d*x)**23)/(23*d**9) + (b**8*(c + d*x)**24)/(24*d**9)} +# {(a + b*x)**7*(c + d*x)**15, x, 2, -((b*c - a*d)**7*(c + d*x)**16)/(16*d**8) + (7*b*(b*c - a*d)**6*(c + d*x)**17)/(17*d**8) - (7*b**2*(b*c - a*d)**5*(c + d*x)**18)/(6*d**8) + (35*b**3*(b*c - a*d)**4*(c + d*x)**19)/(19*d**8) - (7*b**4*(b*c - a*d)**3*(c + d*x)**20)/(4*d**8) + (b**5*(b*c - a*d)**2*(c + d*x)**21)/d**8 - (7*b**6*(b*c - a*d)*(c + d*x)**22)/(22*d**8) + (b**7*(c + d*x)**23)/(23*d**8)} +# {(a + b*x)**6*(c + d*x)**15, x, 2, ((b*c - a*d)**6*(c + d*x)**16)/(16*d**7) - (6*b*(b*c - a*d)**5*(c + d*x)**17)/(17*d**7) + (5*b**2*(b*c - a*d)**4*(c + d*x)**18)/(6*d**7) - (20*b**3*(b*c - a*d)**3*(c + d*x)**19)/(19*d**7) + (3*b**4*(b*c - a*d)**2*(c + d*x)**20)/(4*d**7) - (2*b**5*(b*c - a*d)*(c + d*x)**21)/(7*d**7) + (b**6*(c + d*x)**22)/(22*d**7)} +# {(a + b*x)**5*(c + d*x)**15, x, 2, -((b*c - a*d)**5*(c + d*x)**16)/(16*d**6) + (5*b*(b*c - a*d)**4*(c + d*x)**17)/(17*d**6) - (5*b**2*(b*c - a*d)**3*(c + d*x)**18)/(9*d**6) + (10*b**3*(b*c - a*d)**2*(c + d*x)**19)/(19*d**6) - (b**4*(b*c - a*d)*(c + d*x)**20)/(4*d**6) + (b**5*(c + d*x)**21)/(21*d**6)} +# {(a + b*x)**4*(c + d*x)**15, x, 2, ((b*c - a*d)**4*(c + d*x)**16)/(16*d**5) - (4*b*(b*c - a*d)**3*(c + d*x)**17)/(17*d**5) + (b**2*(b*c - a*d)**2*(c + d*x)**18)/(3*d**5) - (4*b**3*(b*c - a*d)*(c + d*x)**19)/(19*d**5) + (b**4*(c + d*x)**20)/(20*d**5)} +# {(a + b*x)**3*(c + d*x)**15, x, 2, -((b*c - a*d)**3*(c + d*x)**16)/(16*d**4) + (3*b*(b*c - a*d)**2*(c + d*x)**17)/(17*d**4) - (b**2*(b*c - a*d)*(c + d*x)**18)/(6*d**4) + (b**3*(c + d*x)**19)/(19*d**4)} +# {(a + b*x)**2*(c + d*x)**15, x, 2, ((b*c - a*d)**2*(c + d*x)**16)/(16*d**3) - (2*b*(b*c - a*d)*(c + d*x)**17)/(17*d**3) + (b**2*(c + d*x)**18)/(18*d**3)} +# {(a + b*x)*(c + d*x)**15, x, 2, -((b*c - a*d)*(c + d*x)**16)/(16*d**2) + (b*(c + d*x)**17)/(17*d**2)} +# {(c + d*x)**15, x, 1, (c + d*x)**16/(16*d)} +# {(c + d*x)**15/(a + b*x), x, 2, (d*(b*c - a*d)**14*x)/b**15 + ((b*c - a*d)**13*(c + d*x)**2)/(2*b**14) + ((b*c - a*d)**12*(c + d*x)**3)/(3*b**13) + ((b*c - a*d)**11*(c + d*x)**4)/(4*b**12) + ((b*c - a*d)**10*(c + d*x)**5)/(5*b**11) + ((b*c - a*d)**9*(c + d*x)**6)/(6*b**10) + ((b*c - a*d)**8*(c + d*x)**7)/(7*b**9) + ((b*c - a*d)**7*(c + d*x)**8)/(8*b**8) + ((b*c - a*d)**6*(c + d*x)**9)/(9*b**7) + ((b*c - a*d)**5*(c + d*x)**10)/(10*b**6) + ((b*c - a*d)**4*(c + d*x)**11)/(11*b**5) + ((b*c - a*d)**3*(c + d*x)**12)/(12*b**4) + ((b*c - a*d)**2*(c + d*x)**13)/(13*b**3) + ((b*c - a*d)*(c + d*x)**14)/(14*b**2) + (c + d*x)**15/(15*b) + ((b*c - a*d)**15*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**2, x, 2, (105*d**2*(b*c - a*d)**13*x)/b**15 - (b*c - a*d)**15/(b**16*(a + b*x)) + (455*d**3*(b*c - a*d)**12*(a + b*x)**2)/(2*b**16) + (455*d**4*(b*c - a*d)**11*(a + b*x)**3)/b**16 + (3003*d**5*(b*c - a*d)**10*(a + b*x)**4)/(4*b**16) + (1001*d**6*(b*c - a*d)**9*(a + b*x)**5)/b**16 + (2145*d**7*(b*c - a*d)**8*(a + b*x)**6)/(2*b**16) + (6435*d**8*(b*c - a*d)**7*(a + b*x)**7)/(7*b**16) + (5005*d**9*(b*c - a*d)**6*(a + b*x)**8)/(8*b**16) + (1001*d**10*(b*c - a*d)**5*(a + b*x)**9)/(3*b**16) + (273*d**11*(b*c - a*d)**4*(a + b*x)**10)/(2*b**16) + (455*d**12*(b*c - a*d)**3*(a + b*x)**11)/(11*b**16) + (35*d**13*(b*c - a*d)**2*(a + b*x)**12)/(4*b**16) + (15*d**14*(b*c - a*d)*(a + b*x)**13)/(13*b**16) + (d**15*(a + b*x)**14)/(14*b**16) + (15*d*(b*c - a*d)**14*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**3, x, 2, (455*d**3*(b*c - a*d)**12*x)/b**15 - (b*c - a*d)**15/(2*b**16*(a + b*x)**2) - (15*d*(b*c - a*d)**14)/(b**16*(a + b*x)) + (1365*d**4*(b*c - a*d)**11*(a + b*x)**2)/(2*b**16) + (1001*d**5*(b*c - a*d)**10*(a + b*x)**3)/b**16 + (5005*d**6*(b*c - a*d)**9*(a + b*x)**4)/(4*b**16) + (1287*d**7*(b*c - a*d)**8*(a + b*x)**5)/b**16 + (2145*d**8*(b*c - a*d)**7*(a + b*x)**6)/(2*b**16) + (715*d**9*(b*c - a*d)**6*(a + b*x)**7)/b**16 + (3003*d**10*(b*c - a*d)**5*(a + b*x)**8)/(8*b**16) + (455*d**11*(b*c - a*d)**4*(a + b*x)**9)/(3*b**16) + (91*d**12*(b*c - a*d)**3*(a + b*x)**10)/(2*b**16) + (105*d**13*(b*c - a*d)**2*(a + b*x)**11)/(11*b**16) + (5*d**14*(b*c - a*d)*(a + b*x)**12)/(4*b**16) + (d**15*(a + b*x)**13)/(13*b**16) + (105*d**2*(b*c - a*d)**13*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**4, x, 2, (1365*d**4*(b*c - a*d)**11*x)/b**15 - (b*c - a*d)**15/(3*b**16*(a + b*x)**3) - (15*d*(b*c - a*d)**14)/(2*b**16*(a + b*x)**2) - (105*d**2*(b*c - a*d)**13)/(b**16*(a + b*x)) + (3003*d**5*(b*c - a*d)**10*(a + b*x)**2)/(2*b**16) + (5005*d**6*(b*c - a*d)**9*(a + b*x)**3)/(3*b**16) + (6435*d**7*(b*c - a*d)**8*(a + b*x)**4)/(4*b**16) + (1287*d**8*(b*c - a*d)**7*(a + b*x)**5)/b**16 + (5005*d**9*(b*c - a*d)**6*(a + b*x)**6)/(6*b**16) + (429*d**10*(b*c - a*d)**5*(a + b*x)**7)/b**16 + (1365*d**11*(b*c - a*d)**4*(a + b*x)**8)/(8*b**16) + (455*d**12*(b*c - a*d)**3*(a + b*x)**9)/(9*b**16) + (21*d**13*(b*c - a*d)**2*(a + b*x)**10)/(2*b**16) + (15*d**14*(b*c - a*d)*(a + b*x)**11)/(11*b**16) + (d**15*(a + b*x)**12)/(12*b**16) + (455*d**3*(b*c - a*d)**12*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**5, x, 2, (3003*d**5*(b*c - a*d)**10*x)/b**15 - (b*c - a*d)**15/(4*b**16*(a + b*x)**4) - (5*d*(b*c - a*d)**14)/(b**16*(a + b*x)**3) - (105*d**2*(b*c - a*d)**13)/(2*b**16*(a + b*x)**2) - (455*d**3*(b*c - a*d)**12)/(b**16*(a + b*x)) + (5005*d**6*(b*c - a*d)**9*(a + b*x)**2)/(2*b**16) + (2145*d**7*(b*c - a*d)**8*(a + b*x)**3)/b**16 + (6435*d**8*(b*c - a*d)**7*(a + b*x)**4)/(4*b**16) + (1001*d**9*(b*c - a*d)**6*(a + b*x)**5)/b**16 + (1001*d**10*(b*c - a*d)**5*(a + b*x)**6)/(2*b**16) + (195*d**11*(b*c - a*d)**4*(a + b*x)**7)/b**16 + (455*d**12*(b*c - a*d)**3*(a + b*x)**8)/(8*b**16) + (35*d**13*(b*c - a*d)**2*(a + b*x)**9)/(3*b**16) + (3*d**14*(b*c - a*d)*(a + b*x)**10)/(2*b**16) + (d**15*(a + b*x)**11)/(11*b**16) + (1365*d**4*(b*c - a*d)**11*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**6, x, 2, (5005*d**6*(b*c - a*d)**9*x)/b**15 - (b*c - a*d)**15/(5*b**16*(a + b*x)**5) - (15*d*(b*c - a*d)**14)/(4*b**16*(a + b*x)**4) - (35*d**2*(b*c - a*d)**13)/(b**16*(a + b*x)**3) - (455*d**3*(b*c - a*d)**12)/(2*b**16*(a + b*x)**2) - (1365*d**4*(b*c - a*d)**11)/(b**16*(a + b*x)) + (6435*d**7*(b*c - a*d)**8*(a + b*x)**2)/(2*b**16) + (2145*d**8*(b*c - a*d)**7*(a + b*x)**3)/b**16 + (5005*d**9*(b*c - a*d)**6*(a + b*x)**4)/(4*b**16) + (3003*d**10*(b*c - a*d)**5*(a + b*x)**5)/(5*b**16) + (455*d**11*(b*c - a*d)**4*(a + b*x)**6)/(2*b**16) + (65*d**12*(b*c - a*d)**3*(a + b*x)**7)/b**16 + (105*d**13*(b*c - a*d)**2*(a + b*x)**8)/(8*b**16) + (5*d**14*(b*c - a*d)*(a + b*x)**9)/(3*b**16) + (d**15*(a + b*x)**10)/(10*b**16) + (3003*d**5*(b*c - a*d)**10*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**7, x, 2, (6435*d**7*(b*c - a*d)**8*x)/b**15 - (b*c - a*d)**15/(6*b**16*(a + b*x)**6) - (3*d*(b*c - a*d)**14)/(b**16*(a + b*x)**5) - (105*d**2*(b*c - a*d)**13)/(4*b**16*(a + b*x)**4) - (455*d**3*(b*c - a*d)**12)/(3*b**16*(a + b*x)**3) - (1365*d**4*(b*c - a*d)**11)/(2*b**16*(a + b*x)**2) - (3003*d**5*(b*c - a*d)**10)/(b**16*(a + b*x)) + (6435*d**8*(b*c - a*d)**7*(a + b*x)**2)/(2*b**16) + (5005*d**9*(b*c - a*d)**6*(a + b*x)**3)/(3*b**16) + (3003*d**10*(b*c - a*d)**5*(a + b*x)**4)/(4*b**16) + (273*d**11*(b*c - a*d)**4*(a + b*x)**5)/b**16 + (455*d**12*(b*c - a*d)**3*(a + b*x)**6)/(6*b**16) + (15*d**13*(b*c - a*d)**2*(a + b*x)**7)/b**16 + (15*d**14*(b*c - a*d)*(a + b*x)**8)/(8*b**16) + (d**15*(a + b*x)**9)/(9*b**16) + (5005*d**6*(b*c - a*d)**9*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**8, x, 2, (6435*d**8*(b*c - a*d)**7*x)/b**15 - (b*c - a*d)**15/(7*b**16*(a + b*x)**7) - (5*d*(b*c - a*d)**14)/(2*b**16*(a + b*x)**6) - (21*d**2*(b*c - a*d)**13)/(b**16*(a + b*x)**5) - (455*d**3*(b*c - a*d)**12)/(4*b**16*(a + b*x)**4) - (455*d**4*(b*c - a*d)**11)/(b**16*(a + b*x)**3) - (3003*d**5*(b*c - a*d)**10)/(2*b**16*(a + b*x)**2) - (5005*d**6*(b*c - a*d)**9)/(b**16*(a + b*x)) + (5005*d**9*(b*c - a*d)**6*(a + b*x)**2)/(2*b**16) + (1001*d**10*(b*c - a*d)**5*(a + b*x)**3)/b**16 + (1365*d**11*(b*c - a*d)**4*(a + b*x)**4)/(4*b**16) + (91*d**12*(b*c - a*d)**3*(a + b*x)**5)/b**16 + (35*d**13*(b*c - a*d)**2*(a + b*x)**6)/(2*b**16) + (15*d**14*(b*c - a*d)*(a + b*x)**7)/(7*b**16) + (d**15*(a + b*x)**8)/(8*b**16) + (6435*d**7*(b*c - a*d)**8*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**9, x, 2, (5005*d**9*(b*c - a*d)**6*x)/b**15 - (b*c - a*d)**15/(8*b**16*(a + b*x)**8) - (15*d*(b*c - a*d)**14)/(7*b**16*(a + b*x)**7) - (35*d**2*(b*c - a*d)**13)/(2*b**16*(a + b*x)**6) - (91*d**3*(b*c - a*d)**12)/(b**16*(a + b*x)**5) - (1365*d**4*(b*c - a*d)**11)/(4*b**16*(a + b*x)**4) - (1001*d**5*(b*c - a*d)**10)/(b**16*(a + b*x)**3) - (5005*d**6*(b*c - a*d)**9)/(2*b**16*(a + b*x)**2) - (6435*d**7*(b*c - a*d)**8)/(b**16*(a + b*x)) + (3003*d**10*(b*c - a*d)**5*(a + b*x)**2)/(2*b**16) + (455*d**11*(b*c - a*d)**4*(a + b*x)**3)/b**16 + (455*d**12*(b*c - a*d)**3*(a + b*x)**4)/(4*b**16) + (21*d**13*(b*c - a*d)**2*(a + b*x)**5)/b**16 + (5*d**14*(b*c - a*d)*(a + b*x)**6)/(2*b**16) + (d**15*(a + b*x)**7)/(7*b**16) + (6435*d**8*(b*c - a*d)**7*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**10, x, 2, (3003*d**10*(b*c - a*d)**5*x)/b**15 - (b*c - a*d)**15/(9*b**16*(a + b*x)**9) - (15*d*(b*c - a*d)**14)/(8*b**16*(a + b*x)**8) - (15*d**2*(b*c - a*d)**13)/(b**16*(a + b*x)**7) - (455*d**3*(b*c - a*d)**12)/(6*b**16*(a + b*x)**6) - (273*d**4*(b*c - a*d)**11)/(b**16*(a + b*x)**5) - (3003*d**5*(b*c - a*d)**10)/(4*b**16*(a + b*x)**4) - (5005*d**6*(b*c - a*d)**9)/(3*b**16*(a + b*x)**3) - (6435*d**7*(b*c - a*d)**8)/(2*b**16*(a + b*x)**2) - (6435*d**8*(b*c - a*d)**7)/(b**16*(a + b*x)) + (1365*d**11*(b*c - a*d)**4*(a + b*x)**2)/(2*b**16) + (455*d**12*(b*c - a*d)**3*(a + b*x)**3)/(3*b**16) + (105*d**13*(b*c - a*d)**2*(a + b*x)**4)/(4*b**16) + (3*d**14*(b*c - a*d)*(a + b*x)**5)/b**16 + (d**15*(a + b*x)**6)/(6*b**16) + (5005*d**9*(b*c - a*d)**6*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**11, x, 2, (1365*d**11*(b*c - a*d)**4*x)/b**15 - (b*c - a*d)**15/(10*b**16*(a + b*x)**10) - (5*d*(b*c - a*d)**14)/(3*b**16*(a + b*x)**9) - (105*d**2*(b*c - a*d)**13)/(8*b**16*(a + b*x)**8) - (65*d**3*(b*c - a*d)**12)/(b**16*(a + b*x)**7) - (455*d**4*(b*c - a*d)**11)/(2*b**16*(a + b*x)**6) - (3003*d**5*(b*c - a*d)**10)/(5*b**16*(a + b*x)**5) - (5005*d**6*(b*c - a*d)**9)/(4*b**16*(a + b*x)**4) - (2145*d**7*(b*c - a*d)**8)/(b**16*(a + b*x)**3) - (6435*d**8*(b*c - a*d)**7)/(2*b**16*(a + b*x)**2) - (5005*d**9*(b*c - a*d)**6)/(b**16*(a + b*x)) + (455*d**12*(b*c - a*d)**3*(a + b*x)**2)/(2*b**16) + (35*d**13*(b*c - a*d)**2*(a + b*x)**3)/b**16 + (15*d**14*(b*c - a*d)*(a + b*x)**4)/(4*b**16) + (d**15*(a + b*x)**5)/(5*b**16) + (3003*d**10*(b*c - a*d)**5*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**12, x, 2, (455*d**12*(b*c - a*d)**3*x)/b**15 - (b*c - a*d)**15/(11*b**16*(a + b*x)**11) - (3*d*(b*c - a*d)**14)/(2*b**16*(a + b*x)**10) - (35*d**2*(b*c - a*d)**13)/(3*b**16*(a + b*x)**9) - (455*d**3*(b*c - a*d)**12)/(8*b**16*(a + b*x)**8) - (195*d**4*(b*c - a*d)**11)/(b**16*(a + b*x)**7) - (1001*d**5*(b*c - a*d)**10)/(2*b**16*(a + b*x)**6) - (1001*d**6*(b*c - a*d)**9)/(b**16*(a + b*x)**5) - (6435*d**7*(b*c - a*d)**8)/(4*b**16*(a + b*x)**4) - (2145*d**8*(b*c - a*d)**7)/(b**16*(a + b*x)**3) - (5005*d**9*(b*c - a*d)**6)/(2*b**16*(a + b*x)**2) - (3003*d**10*(b*c - a*d)**5)/(b**16*(a + b*x)) + (105*d**13*(b*c - a*d)**2*(a + b*x)**2)/(2*b**16) + (5*d**14*(b*c - a*d)*(a + b*x)**3)/b**16 + (d**15*(a + b*x)**4)/(4*b**16) + (1365*d**11*(b*c - a*d)**4*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**13, x, 2, (105*d**13*(b*c - a*d)**2*x)/b**15 - (b*c - a*d)**15/(12*b**16*(a + b*x)**12) - (15*d*(b*c - a*d)**14)/(11*b**16*(a + b*x)**11) - (21*d**2*(b*c - a*d)**13)/(2*b**16*(a + b*x)**10) - (455*d**3*(b*c - a*d)**12)/(9*b**16*(a + b*x)**9) - (1365*d**4*(b*c - a*d)**11)/(8*b**16*(a + b*x)**8) - (429*d**5*(b*c - a*d)**10)/(b**16*(a + b*x)**7) - (5005*d**6*(b*c - a*d)**9)/(6*b**16*(a + b*x)**6) - (1287*d**7*(b*c - a*d)**8)/(b**16*(a + b*x)**5) - (6435*d**8*(b*c - a*d)**7)/(4*b**16*(a + b*x)**4) - (5005*d**9*(b*c - a*d)**6)/(3*b**16*(a + b*x)**3) - (3003*d**10*(b*c - a*d)**5)/(2*b**16*(a + b*x)**2) - (1365*d**11*(b*c - a*d)**4)/(b**16*(a + b*x)) + (15*d**14*(b*c - a*d)*(a + b*x)**2)/(2*b**16) + (d**15*(a + b*x)**3)/(3*b**16) + (455*d**12*(b*c - a*d)**3*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**14, x, 2, (d**14*(15*b*c - 14*a*d)*x)/b**15 + (d**15*x**2)/(2*b**14) - (b*c - a*d)**15/(13*b**16*(a + b*x)**13) - (5*d*(b*c - a*d)**14)/(4*b**16*(a + b*x)**12) - (105*d**2*(b*c - a*d)**13)/(11*b**16*(a + b*x)**11) - (91*d**3*(b*c - a*d)**12)/(2*b**16*(a + b*x)**10) - (455*d**4*(b*c - a*d)**11)/(3*b**16*(a + b*x)**9) - (3003*d**5*(b*c - a*d)**10)/(8*b**16*(a + b*x)**8) - (715*d**6*(b*c - a*d)**9)/(b**16*(a + b*x)**7) - (2145*d**7*(b*c - a*d)**8)/(2*b**16*(a + b*x)**6) - (1287*d**8*(b*c - a*d)**7)/(b**16*(a + b*x)**5) - (5005*d**9*(b*c - a*d)**6)/(4*b**16*(a + b*x)**4) - (1001*d**10*(b*c - a*d)**5)/(b**16*(a + b*x)**3) - (1365*d**11*(b*c - a*d)**4)/(2*b**16*(a + b*x)**2) - (455*d**12*(b*c - a*d)**3)/(b**16*(a + b*x)) + (105*d**13*(b*c - a*d)**2*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**15, x, 2, (d**15*x)/b**15 - (b*c - a*d)**15/(14*b**16*(a + b*x)**14) - (15*d*(b*c - a*d)**14)/(13*b**16*(a + b*x)**13) - (35*d**2*(b*c - a*d)**13)/(4*b**16*(a + b*x)**12) - (455*d**3*(b*c - a*d)**12)/(11*b**16*(a + b*x)**11) - (273*d**4*(b*c - a*d)**11)/(2*b**16*(a + b*x)**10) - (1001*d**5*(b*c - a*d)**10)/(3*b**16*(a + b*x)**9) - (5005*d**6*(b*c - a*d)**9)/(8*b**16*(a + b*x)**8) - (6435*d**7*(b*c - a*d)**8)/(7*b**16*(a + b*x)**7) - (2145*d**8*(b*c - a*d)**7)/(2*b**16*(a + b*x)**6) - (1001*d**9*(b*c - a*d)**6)/(b**16*(a + b*x)**5) - (3003*d**10*(b*c - a*d)**5)/(4*b**16*(a + b*x)**4) - (455*d**11*(b*c - a*d)**4)/(b**16*(a + b*x)**3) - (455*d**12*(b*c - a*d)**3)/(2*b**16*(a + b*x)**2) - (105*d**13*(b*c - a*d)**2)/(b**16*(a + b*x)) + (15*d**14*(b*c - a*d)*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**16, x, 2, -(b*c - a*d)**15/(15*b**16*(a + b*x)**15) - (15*d*(b*c - a*d)**14)/(14*b**16*(a + b*x)**14) - (105*d**2*(b*c - a*d)**13)/(13*b**16*(a + b*x)**13) - (455*d**3*(b*c - a*d)**12)/(12*b**16*(a + b*x)**12) - (1365*d**4*(b*c - a*d)**11)/(11*b**16*(a + b*x)**11) - (3003*d**5*(b*c - a*d)**10)/(10*b**16*(a + b*x)**10) - (5005*d**6*(b*c - a*d)**9)/(9*b**16*(a + b*x)**9) - (6435*d**7*(b*c - a*d)**8)/(8*b**16*(a + b*x)**8) - (6435*d**8*(b*c - a*d)**7)/(7*b**16*(a + b*x)**7) - (5005*d**9*(b*c - a*d)**6)/(6*b**16*(a + b*x)**6) - (3003*d**10*(b*c - a*d)**5)/(5*b**16*(a + b*x)**5) - (1365*d**11*(b*c - a*d)**4)/(4*b**16*(a + b*x)**4) - (455*d**12*(b*c - a*d)**3)/(3*b**16*(a + b*x)**3) - (105*d**13*(b*c - a*d)**2)/(2*b**16*(a + b*x)**2) - (15*d**14*(b*c - a*d))/(b**16*(a + b*x)) + (d**15*Log[a + b*x])/b**16} +# {(c + d*x)**15/(a + b*x)**17, x, 1, -(c + d*x)**16/(16*(b*c - a*d)*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**18, x, 2, -(c + d*x)**16/(17*(b*c - a*d)*(a + b*x)**17) + (d*(c + d*x)**16)/(272*(b*c - a*d)**2*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**19, x, 3, -(c + d*x)**16/(18*(b*c - a*d)*(a + b*x)**18) + (d*(c + d*x)**16)/(153*(b*c - a*d)**2*(a + b*x)**17) - (d**2*(c + d*x)**16)/(2448*(b*c - a*d)**3*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**20, x, 4, -(c + d*x)**16/(19*(b*c - a*d)*(a + b*x)**19) + (d*(c + d*x)**16)/(114*(b*c - a*d)**2*(a + b*x)**18) - (d**2*(c + d*x)**16)/(969*(b*c - a*d)**3*(a + b*x)**17) + (d**3*(c + d*x)**16)/(15504*(b*c - a*d)**4*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**21, x, 5, -(c + d*x)**16/(20*(b*c - a*d)*(a + b*x)**20) + (d*(c + d*x)**16)/(95*(b*c - a*d)**2*(a + b*x)**19) - (d**2*(c + d*x)**16)/(570*(b*c - a*d)**3*(a + b*x)**18) + (d**3*(c + d*x)**16)/(4845*(b*c - a*d)**4*(a + b*x)**17) - (d**4*(c + d*x)**16)/(77520*(b*c - a*d)**5*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**22, x, 6, -(c + d*x)**16/(21*(b*c - a*d)*(a + b*x)**21) + (d*(c + d*x)**16)/(84*(b*c - a*d)**2*(a + b*x)**20) - (d**2*(c + d*x)**16)/(399*(b*c - a*d)**3*(a + b*x)**19) + (d**3*(c + d*x)**16)/(2394*(b*c - a*d)**4*(a + b*x)**18) - (d**4*(c + d*x)**16)/(20349*(b*c - a*d)**5*(a + b*x)**17) + (d**5*(c + d*x)**16)/(325584*(b*c - a*d)**6*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**23, x, 7, -(c + d*x)**16/(22*(b*c - a*d)*(a + b*x)**22) + (d*(c + d*x)**16)/(77*(b*c - a*d)**2*(a + b*x)**21) - (d**2*(c + d*x)**16)/(308*(b*c - a*d)**3*(a + b*x)**20) + (d**3*(c + d*x)**16)/(1463*(b*c - a*d)**4*(a + b*x)**19) - (d**4*(c + d*x)**16)/(8778*(b*c - a*d)**5*(a + b*x)**18) + (d**5*(c + d*x)**16)/(74613*(b*c - a*d)**6*(a + b*x)**17) - (d**6*(c + d*x)**16)/(1193808*(b*c - a*d)**7*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**24, x, 8, -(c + d*x)**16/(23*(b*c - a*d)*(a + b*x)**23) + (7*d*(c + d*x)**16)/(506*(b*c - a*d)**2*(a + b*x)**22) - (d**2*(c + d*x)**16)/(253*(b*c - a*d)**3*(a + b*x)**21) + (d**3*(c + d*x)**16)/(1012*(b*c - a*d)**4*(a + b*x)**20) - (d**4*(c + d*x)**16)/(4807*(b*c - a*d)**5*(a + b*x)**19) + (d**5*(c + d*x)**16)/(28842*(b*c - a*d)**6*(a + b*x)**18) - (d**6*(c + d*x)**16)/(245157*(b*c - a*d)**7*(a + b*x)**17) + (d**7*(c + d*x)**16)/(3922512*(b*c - a*d)**8*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**25, x, 9, -(c + d*x)**16/(24*(b*c - a*d)*(a + b*x)**24) + (d*(c + d*x)**16)/(69*(b*c - a*d)**2*(a + b*x)**23) - (7*d**2*(c + d*x)**16)/(1518*(b*c - a*d)**3*(a + b*x)**22) + (d**3*(c + d*x)**16)/(759*(b*c - a*d)**4*(a + b*x)**21) - (d**4*(c + d*x)**16)/(3036*(b*c - a*d)**5*(a + b*x)**20) + (d**5*(c + d*x)**16)/(14421*(b*c - a*d)**6*(a + b*x)**19) - (d**6*(c + d*x)**16)/(86526*(b*c - a*d)**7*(a + b*x)**18) + (d**7*(c + d*x)**16)/(735471*(b*c - a*d)**8*(a + b*x)**17) - (d**8*(c + d*x)**16)/(11767536*(b*c - a*d)**9*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**26, x, 10, -(c + d*x)**16/(25*(b*c - a*d)*(a + b*x)**25) + (3*d*(c + d*x)**16)/(200*(b*c - a*d)**2*(a + b*x)**24) - (3*d**2*(c + d*x)**16)/(575*(b*c - a*d)**3*(a + b*x)**23) + (21*d**3*(c + d*x)**16)/(12650*(b*c - a*d)**4*(a + b*x)**22) - (3*d**4*(c + d*x)**16)/(6325*(b*c - a*d)**5*(a + b*x)**21) + (3*d**5*(c + d*x)**16)/(25300*(b*c - a*d)**6*(a + b*x)**20) - (3*d**6*(c + d*x)**16)/(120175*(b*c - a*d)**7*(a + b*x)**19) + (d**7*(c + d*x)**16)/(240350*(b*c - a*d)**8*(a + b*x)**18) - (d**8*(c + d*x)**16)/(2042975*(b*c - a*d)**9*(a + b*x)**17) + (d**9*(c + d*x)**16)/(32687600*(b*c - a*d)**10*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**27, x, 11, -(c + d*x)**16/(26*(b*c - a*d)*(a + b*x)**26) + (d*(c + d*x)**16)/(65*(b*c - a*d)**2*(a + b*x)**25) - (3*d**2*(c + d*x)**16)/(520*(b*c - a*d)**3*(a + b*x)**24) + (3*d**3*(c + d*x)**16)/(1495*(b*c - a*d)**4*(a + b*x)**23) - (21*d**4*(c + d*x)**16)/(32890*(b*c - a*d)**5*(a + b*x)**22) + (3*d**5*(c + d*x)**16)/(16445*(b*c - a*d)**6*(a + b*x)**21) - (3*d**6*(c + d*x)**16)/(65780*(b*c - a*d)**7*(a + b*x)**20) + (3*d**7*(c + d*x)**16)/(312455*(b*c - a*d)**8*(a + b*x)**19) - (d**8*(c + d*x)**16)/(624910*(b*c - a*d)**9*(a + b*x)**18) + (d**9*(c + d*x)**16)/(5311735*(b*c - a*d)**10*(a + b*x)**17) - (d**10*(c + d*x)**16)/(84987760*(b*c - a*d)**11*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**28, x, 12, -((c + d*x)**16/(27*(b*c - a*d)*(a + b*x)**27)) + (11*d*(c + d*x)**16)/(702*(b*c - a*d)**2*(a + b*x)**26) - (11*d**2*(c + d*x)**16)/(1755*(b*c - a*d)**3*(a + b*x)**25) + (11*d**3*(c + d*x)**16)/(4680*(b*c - a*d)**4*(a + b*x)**24) - (11*d**4*(c + d*x)**16)/(13455*(b*c - a*d)**5*(a + b*x)**23) + (7*d**5*(c + d*x)**16)/(26910*(b*c - a*d)**6*(a + b*x)**22) - (d**6*(c + d*x)**16)/(13455*(b*c - a*d)**7*(a + b*x)**21) + (d**7*(c + d*x)**16)/(53820*(b*c - a*d)**8*(a + b*x)**20) - (d**8*(c + d*x)**16)/(255645*(b*c - a*d)**9*(a + b*x)**19) + (d**9*(c + d*x)**16)/(1533870*(b*c - a*d)**10*(a + b*x)**18) - (d**10*(c + d*x)**16)/(13037895*(b*c - a*d)**11*(a + b*x)**17) + (d**11*(c + d*x)**16)/(208606320*(b*c - a*d)**12*(a + b*x)**16)} +# {(c + d*x)**15/(a + b*x)**29, x, 2, -(b*c - a*d)**15/(28*b**16*(a + b*x)**28) - (5*d*(b*c - a*d)**14)/(9*b**16*(a + b*x)**27) - (105*d**2*(b*c - a*d)**13)/(26*b**16*(a + b*x)**26) - (91*d**3*(b*c - a*d)**12)/(5*b**16*(a + b*x)**25) - (455*d**4*(b*c - a*d)**11)/(8*b**16*(a + b*x)**24) - (3003*d**5*(b*c - a*d)**10)/(23*b**16*(a + b*x)**23) - (455*d**6*(b*c - a*d)**9)/(2*b**16*(a + b*x)**22) - (2145*d**7*(b*c - a*d)**8)/(7*b**16*(a + b*x)**21) - (1287*d**8*(b*c - a*d)**7)/(4*b**16*(a + b*x)**20) - (5005*d**9*(b*c - a*d)**6)/(19*b**16*(a + b*x)**19) - (1001*d**10*(b*c - a*d)**5)/(6*b**16*(a + b*x)**18) - (1365*d**11*(b*c - a*d)**4)/(17*b**16*(a + b*x)**17) - (455*d**12*(b*c - a*d)**3)/(16*b**16*(a + b*x)**16) - (7*d**13*(b*c - a*d)**2)/(b**16*(a + b*x)**15) - (15*d**14*(b*c - a*d))/(14*b**16*(a + b*x)**14) - d**15/(13*b**16*(a + b*x)**13)} +# {(c + d*x)**15/(a + b*x)**30, x, 2, -(b*c - a*d)**15/(29*b**16*(a + b*x)**29) - (15*d*(b*c - a*d)**14)/(28*b**16*(a + b*x)**28) - (35*d**2*(b*c - a*d)**13)/(9*b**16*(a + b*x)**27) - (35*d**3*(b*c - a*d)**12)/(2*b**16*(a + b*x)**26) - (273*d**4*(b*c - a*d)**11)/(5*b**16*(a + b*x)**25) - (1001*d**5*(b*c - a*d)**10)/(8*b**16*(a + b*x)**24) - (5005*d**6*(b*c - a*d)**9)/(23*b**16*(a + b*x)**23) - (585*d**7*(b*c - a*d)**8)/(2*b**16*(a + b*x)**22) - (2145*d**8*(b*c - a*d)**7)/(7*b**16*(a + b*x)**21) - (1001*d**9*(b*c - a*d)**6)/(4*b**16*(a + b*x)**20) - (3003*d**10*(b*c - a*d)**5)/(19*b**16*(a + b*x)**19) - (455*d**11*(b*c - a*d)**4)/(6*b**16*(a + b*x)**18) - (455*d**12*(b*c - a*d)**3)/(17*b**16*(a + b*x)**17) - (105*d**13*(b*c - a*d)**2)/(16*b**16*(a + b*x)**16) - (d**14*(b*c - a*d))/(b**16*(a + b*x)**15) - d**15/(14*b**16*(a + b*x)**14)} + +# {(c + d*x)**15/(a + b*x)**31, x, 2, -(b*c - a*d)**15/(30*b**16*(a + b*x)**30) - (15*d*(b*c - a*d)**14)/(29*b**16*(a + b*x)**29) - (15*d**2*(b*c - a*d)**13)/(4*b**16*(a + b*x)**28) - (455*d**3*(b*c - a*d)**12)/(27*b**16*(a + b*x)**27) - (105*d**4*(b*c - a*d)**11)/(2*b**16*(a + b*x)**26) - (3003*d**5*(b*c - a*d)**10)/(25*b**16*(a + b*x)**25) - (5005*d**6*(b*c - a*d)**9)/(24*b**16*(a + b*x)**24) - (6435*d**7*(b*c - a*d)**8)/(23*b**16*(a + b*x)**23) - (585*d**8*(b*c - a*d)**7)/(2*b**16*(a + b*x)**22) - (715*d**9*(b*c - a*d)**6)/(3*b**16*(a + b*x)**21) - (3003*d**10*(b*c - a*d)**5)/(20*b**16*(a + b*x)**20) - (1365*d**11*(b*c - a*d)**4)/(19*b**16*(a + b*x)**19) - (455*d**12*(b*c - a*d)**3)/(18*b**16*(a + b*x)**18) - (105*d**13*(b*c - a*d)**2)/(17*b**16*(a + b*x)**17) - (15*d**14*(b*c - a*d))/(16*b**16*(a + b*x)**16) - d**15/(15*b**16*(a + b*x)**15)} + +# n<0 +assert rubi_integrate((a + b*x)**5/(c + d*x), x) == b*(b*c-a*d)**4*x/d**5-1/2*(b*c-a*d)**3*(a + b*x)**2/d**4 + 1/3*(b*c-a*d)**2*(a + b*x)**3/d**3-1/4*(b*c-a*d)*(a + b*x)**4/d**2 + 1/5*(a + b*x)**5/d-(b*c-a*d)**5*log(c + d*x)/d**6 +assert rubi_integrate((a + b*x)**4/(c + d*x), x) == -b*(b*c-a*d)**3*x/d**4 + 1/2*(b*c-a*d)**2*(a + b*x)**2/d**3-1/3*(b*c-a*d)*(a + b*x)**3/d**2 + 1/4*(a + b*x)**4/d + (b*c-a*d)**4*log(c + d*x)/d**5 +assert rubi_integrate((a + b*x)**3/(c + d*x), x) == b*(b*c-a*d)**2*x/d**3-1/2*(b*c-a*d)*(a + b*x)**2/d**2 + 1/3*(a + b*x)**3/d-(b*c-a*d)**3*log(c + d*x)/d**4 +assert rubi_integrate((a + b*x)**2/(c + d*x), x) == -b*(b*c-a*d)*x/d**2 + 1/2*(a + b*x)**2/d + (b*c-a*d)**2*log(c + d*x)/d**3 +assert rubi_integrate((a + b*x)/(c + d*x), x) == b*x/d-(b*c-a*d)*log(c + d*x)/d**2 +assert rubi_integrate(1/(c + d*x), x) == log(c + d*x)/d +assert rubi_integrate(1/((a + b*x)*(c + d*x)), x) == log(a + b*x)/(b*c-a*d)-log(c + d*x)/(b*c-a*d) +assert rubi_integrate(1/((a + b*x)**2*(c + d*x)), x) == (-1)/((b*c-a*d)*(a + b*x))-d*log(a + b*x)/(b*c-a*d)**2 + d*log(c + d*x)/(b*c-a*d)**2 +assert rubi_integrate(1/((a + b*x)**3*(c + d*x)), x) == (-1/2)/((b*c-a*d)*(a + b*x)**2) + d/((b*c-a*d)**2*(a + b*x)) + d**2*log(a + b*x)/(b*c-a*d)**3-d**2*log(c + d*x)/(b*c-a*d)**3 +assert rubi_integrate((a + b*x)**5/(c + d*x)**2, x) == -10*b**2*(b*c-a*d)**3*x/d**5 + (b*c-a*d)**5/(d**6*(c + d*x)) + 5*b**3*(b*c-a*d)**2*(c + d*x)**2/d**6-5/3*b**4*(b*c-a*d)*(c + d*x)**3/d**6 + 1/4*b**5*(c + d*x)**4/d**6 + 5*b*(b*c-a*d)**4*log(c + d*x)/d**6 +assert rubi_integrate((a + b*x)**4/(c + d*x)**2, x) == 6*b**2*(b*c-a*d)**2*x/d**4-(b*c-a*d)**4/(d**5*(c + d*x))-2*b**3*(b*c-a*d)*(c + d*x)**2/d**5 + 1/3*b**4*(c + d*x)**3/d**5-4*b*(b*c-a*d)**3*log(c + d*x)/d**5 +assert rubi_integrate((a + b*x)**3/(c + d*x)**2, x) == -b**2*(2*b*c-3*a*d)*x/d**3 + 1/2*b**3*x**2/d**2 + (b*c-a*d)**3/(d**4*(c + d*x)) + 3*b*(b*c-a*d)**2*log(c + d*x)/d**4 +assert rubi_integrate((a + b*x)**2/(c + d*x)**2, x) == b**2*x/d**2-(b*c-a*d)**2/(d**3*(c + d*x))-2*b*(b*c-a*d)*log(c + d*x)/d**3 +assert rubi_integrate((a + b*x)/(c + d*x)**2, x) == (b*c-a*d)/(d**2*(c + d*x)) + b*log(c + d*x)/d**2 +assert rubi_integrate(1/(c + d*x)**2, x) == (-1)/(d*(c + d*x)) +assert rubi_integrate(1/((a + b*x)*(c + d*x)**2), x) == 1/((b*c-a*d)*(c + d*x)) + b*log(a + b*x)/(b*c-a*d)**2-b*log(c + d*x)/(b*c-a*d)**2 +assert rubi_integrate(1/((a + b*x)**2*(c + d*x)**2), x) == -b/((b*c-a*d)**2*(a + b*x))-d/((b*c-a*d)**2*(c + d*x))-2*b*d*log(a + b*x)/(b*c-a*d)**3 + 2*b*d*log(c + d*x)/(b*c-a*d)**3 +assert rubi_integrate(1/((a + b*x)**3*(c + d*x)**2), x) == -1/2*b/((b*c-a*d)**2*(a + b*x)**2) + 2*b*d/((b*c-a*d)**3*(a + b*x)) + d**2/((b*c-a*d)**3*(c + d*x)) + 3*b*d**2*log(a + b*x)/(b*c-a*d)**4-3*b*d**2*log(c + d*x)/(b*c-a*d)**4 +assert rubi_integrate((a + b*x)**6/(c + d*x)**3, x) == -20*b**3*(b*c-a*d)**3*x/d**6-1/2*(b*c-a*d)**6/(d**7*(c + d*x)**2) + 6*b*(b*c-a*d)**5/(d**7*(c + d*x)) + 15/2*b**4*(b*c-a*d)**2*(c + d*x)**2/d**7-2*b**5*(b*c-a*d)*(c + d*x)**3/d**7 + 1/4*b**6*(c + d*x)**4/d**7 + 15*b**2*(b*c-a*d)**4*log(c + d*x)/d**7 +assert rubi_integrate((a + b*x)**5/(c + d*x)**3, x) == 10*b**3*(b*c-a*d)**2*x/d**5 + 1/2*(b*c-a*d)**5/(d**6*(c + d*x)**2)-5*b*(b*c-a*d)**4/(d**6*(c + d*x))-5/2*b**4*(b*c-a*d)*(c + d*x)**2/d**6 + 1/3*b**5*(c + d*x)**3/d**6-10*b**2*(b*c-a*d)**3*log(c + d*x)/d**6 +assert rubi_integrate((a + b*x)**4/(c + d*x)**3, x) == -b**3*(3*b*c-4*a*d)*x/d**4 + 1/2*b**4*x**2/d**3-1/2*(b*c-a*d)**4/(d**5*(c + d*x)**2) + 4*b*(b*c-a*d)**3/(d**5*(c + d*x)) + 6*b**2*(b*c-a*d)**2*log(c + d*x)/d**5 +assert rubi_integrate((a + b*x)**3/(c + d*x)**3, x) == b**3*x/d**3 + 1/2*(b*c-a*d)**3/(d**4*(c + d*x)**2)-3*b*(b*c-a*d)**2/(d**4*(c + d*x))-3*b**2*(b*c-a*d)*log(c + d*x)/d**4 +assert rubi_integrate((a + b*x)**2/(c + d*x)**3, x) == -1/2*(b*c-a*d)**2/(d**3*(c + d*x)**2) + 2*b*(b*c-a*d)/(d**3*(c + d*x)) + b**2*log(c + d*x)/d**3 +assert rubi_integrate((a + b*x)/(c + d*x)**3, x) == 1/2*(a + b*x)**2/((b*c-a*d)*(c + d*x)**2) +assert rubi_integrate(1/(c + d*x)**3, x) == (-1/2)/(d*(c + d*x)**2) +assert rubi_integrate(1/((a + b*x)*(c + d*x)**3), x) == 1/2/((b*c-a*d)*(c + d*x)**2) + b/((b*c-a*d)**2*(c + d*x)) + b**2*log(a + b*x)/(b*c-a*d)**3-b**2*log(c + d*x)/(b*c-a*d)**3 +assert rubi_integrate(1/((a + b*x)**2*(c + d*x)**3), x) == -b**2/((b*c-a*d)**3*(a + b*x))-1/2*d/((b*c-a*d)**2*(c + d*x)**2)-2*b*d/((b*c-a*d)**3*(c + d*x))-3*b**2*d*log(a + b*x)/(b*c-a*d)**4 + 3*b**2*d*log(c + d*x)/(b*c-a*d)**4 +assert rubi_integrate(1/((a + b*x)**3*(c + d*x)**3), x) == -1/2*b**2/((b*c-a*d)**3*(a + b*x)**2) + 3*b**2*d/((b*c-a*d)**4*(a + b*x)) + 1/2*d**2/((b*c-a*d)**3*(c + d*x)**2) + 3*b*d**2/((b*c-a*d)**4*(c + d*x)) + 6*b**2*d**2*log(a + b*x)/(b*c-a*d)**5-6*b**2*d**2*log(c + d*x)/(b*c-a*d)**5 +assert rubi_integrate((a + b*x)**9/(c + d*x)**8, x) == -b**8*(8*b*c-9*a*d)*x/d**9 + 1/2*b**9*x**2/d**8 + 1/7*(b*c-a*d)**9/(d**10*(c + d*x)**7)-3/2*b*(b*c-a*d)**8/(d**10*(c + d*x)**6) + 36/5*b**2*(b*c-a*d)**7/(d**10*(c + d*x)**5)-21*b**3*(b*c-a*d)**6/(d**10*(c + d*x)**4) + 42*b**4*(b*c-a*d)**5/(d**10*(c + d*x)**3)-63*b**5*(b*c-a*d)**4/(d**10*(c + d*x)**2) + 84*b**6*(b*c-a*d)**3/(d**10*(c + d*x)) + 36*b**7*(b*c-a*d)**2*log(c + d*x)/d**10 +assert rubi_integrate((a + b*x)**8/(c + d*x)**8, x) == b**8*x/d**8-1/7*(b*c-a*d)**8/(d**9*(c + d*x)**7) + 4/3*b*(b*c-a*d)**7/(d**9*(c + d*x)**6)-28/5*b**2*(b*c-a*d)**6/(d**9*(c + d*x)**5) + 14*b**3*(b*c-a*d)**5/(d**9*(c + d*x)**4)-70/3*b**4*(b*c-a*d)**4/(d**9*(c + d*x)**3) + 28*b**5*(b*c-a*d)**3/(d**9*(c + d*x)**2)-28*b**6*(b*c-a*d)**2/(d**9*(c + d*x))-8*b**7*(b*c-a*d)*log(c + d*x)/d**9 +assert rubi_integrate((a + b*x)**7/(c + d*x)**8, x) == 1/7*(b*c-a*d)**7/(d**8*(c + d*x)**7)-7/6*b*(b*c-a*d)**6/(d**8*(c + d*x)**6) + 21/5*b**2*(b*c-a*d)**5/(d**8*(c + d*x)**5)-35/4*b**3*(b*c-a*d)**4/(d**8*(c + d*x)**4) + 35/3*b**4*(b*c-a*d)**3/(d**8*(c + d*x)**3)-21/2*b**5*(b*c-a*d)**2/(d**8*(c + d*x)**2) + 7*b**6*(b*c-a*d)/(d**8*(c + d*x)) + b**7*log(c + d*x)/d**8 +assert rubi_integrate((a + b*x)**6/(c + d*x)**8, x) == 1/7*(a + b*x)**7/((b*c-a*d)*(c + d*x)**7) +assert rubi_integrate((a + b*x)**5/(c + d*x)**8, x) == 1/7*(a + b*x)**6/((b*c-a*d)*(c + d*x)**7) + 1/42*b*(a + b*x)**6/((b*c-a*d)**2*(c + d*x)**6) +assert rubi_integrate((a + b*x)**4/(c + d*x)**8, x) == 1/7*(a + b*x)**5/((b*c-a*d)*(c + d*x)**7) + 1/21*b*(a + b*x)**5/((b*c-a*d)**2*(c + d*x)**6) + 1/105*b**2*(a + b*x)**5/((b*c-a*d)**3*(c + d*x)**5) +assert rubi_integrate((a + b*x)**3/(c + d*x)**8, x) == 1/7*(b*c-a*d)**3/(d**4*(c + d*x)**7)-1/2*b*(b*c-a*d)**2/(d**4*(c + d*x)**6) + 3/5*b**2*(b*c-a*d)/(d**4*(c + d*x)**5)-1/4*b**3/(d**4*(c + d*x)**4) +assert rubi_integrate((a + b*x)**2/(c + d*x)**8, x) == -1/7*(b*c-a*d)**2/(d**3*(c + d*x)**7) + 1/3*b*(b*c-a*d)/(d**3*(c + d*x)**6)-1/5*b**2/(d**3*(c + d*x)**5) +assert rubi_integrate((a + b*x)/(c + d*x)**8, x) == 1/7*(b*c-a*d)/(d**2*(c + d*x)**7)-1/6*b/(d**2*(c + d*x)**6) +assert rubi_integrate(1/(c + d*x)**8, x) == (-1/7)/(d*(c + d*x)**7) +assert rubi_integrate(1/((a + b*x)*(c + d*x)**8), x) == 1/7/((b*c-a*d)*(c + d*x)**7) + 1/6*b/((b*c-a*d)**2*(c + d*x)**6) + 1/5*b**2/((b*c-a*d)**3*(c + d*x)**5) + 1/4*b**3/((b*c-a*d)**4*(c + d*x)**4) + 1/3*b**4/((b*c-a*d)**5*(c + d*x)**3) + 1/2*b**5/((b*c-a*d)**6*(c + d*x)**2) + b**6/((b*c-a*d)**7*(c + d*x)) + b**7*log(a + b*x)/(b*c-a*d)**8-b**7*log(c + d*x)/(b*c-a*d)**8 +assert rubi_integrate(1/((a + b*x)**2*(c + d*x)**8), x) == -b**7/((b*c-a*d)**8*(a + b*x))-1/7*d/((b*c-a*d)**2*(c + d*x)**7)-1/3*b*d/((b*c-a*d)**3*(c + d*x)**6)-3/5*b**2*d/((b*c-a*d)**4*(c + d*x)**5)-b**3*d/((b*c-a*d)**5*(c + d*x)**4)-5/3*b**4*d/((b*c-a*d)**6*(c + d*x)**3)-3*b**5*d/((b*c-a*d)**7*(c + d*x)**2)-7*b**6*d/((b*c-a*d)**8*(c + d*x))-8*b**7*d*log(a + b*x)/(b*c-a*d)**9 + 8*b**7*d*log(c + d*x)/(b*c-a*d)**9 +assert rubi_integrate(1/((a + b*x)**3*(c + d*x)**8), x) == -1/2*b**7/((b*c-a*d)**8*(a + b*x)**2) + 8*b**7*d/((b*c-a*d)**9*(a + b*x)) + 1/7*d**2/((b*c-a*d)**3*(c + d*x)**7) + 1/2*b*d**2/((b*c-a*d)**4*(c + d*x)**6) + 6/5*b**2*d**2/((b*c-a*d)**5*(c + d*x)**5) + 5/2*b**3*d**2/((b*c-a*d)**6*(c + d*x)**4) + 5*b**4*d**2/((b*c-a*d)**7*(c + d*x)**3) + 21/2*b**5*d**2/((b*c-a*d)**8*(c + d*x)**2) + 28*b**6*d**2/((b*c-a*d)**9*(c + d*x)) + 36*b**7*d**2*log(a + b*x)/(b*c-a*d)**10-36*b**7*d**2*log(c + d*x)/(b*c-a*d)**10 + +# Integrands of the form (a + b x)**m (c + d x)**(n/2 + +# n>0 +assert rubi_integrate((a + b*x)**5*(c + d*x)**(1/2), x) == -2/3*(b*c-a*d)**5*(c + d*x)**(3/2)/d**6 + 2*b*(b*c-a*d)**4*(c + d*x)**(5/2)/d**6-20/7*b**2*(b*c-a*d)**3*(c + d*x)**(7/2)/d**6 + 20/9*b**3*(b*c-a*d)**2*(c + d*x)**(9/2)/d**6-10/11*b**4*(b*c-a*d)*(c + d*x)**(11/2)/d**6 + 2/13*b**5*(c + d*x)**(13/2)/d**6 +assert rubi_integrate((a + b*x)**4*(c + d*x)**(1/2), x) == 2/3*(b*c-a*d)**4*(c + d*x)**(3/2)/d**5-8/5*b*(b*c-a*d)**3*(c + d*x)**(5/2)/d**5 + 12/7*b**2*(b*c-a*d)**2*(c + d*x)**(7/2)/d**5-8/9*b**3*(b*c-a*d)*(c + d*x)**(9/2)/d**5 + 2/11*b**4*(c + d*x)**(11/2)/d**5 +assert rubi_integrate((a + b*x)**3*(c + d*x)**(1/2), x) == -2/3*(b*c-a*d)**3*(c + d*x)**(3/2)/d**4 + 6/5*b*(b*c-a*d)**2*(c + d*x)**(5/2)/d**4-6/7*b**2*(b*c-a*d)*(c + d*x)**(7/2)/d**4 + 2/9*b**3*(c + d*x)**(9/2)/d**4 +assert rubi_integrate((a + b*x)**2*(c + d*x)**(1/2), x) == 2/3*(b*c-a*d)**2*(c + d*x)**(3/2)/d**3-4/5*b*(b*c-a*d)*(c + d*x)**(5/2)/d**3 + 2/7*b**2*(c + d*x)**(7/2)/d**3 +assert rubi_integrate((a + b*x)*(c + d*x)**(1/2), x) == -2/3*(b*c-a*d)*(c + d*x)**(3/2)/d**2 + 2/5*b*(c + d*x)**(5/2)/d**2 +assert rubi_integrate((c + d*x)**(1/2), x) == 2/3*(c + d*x)**(3/2)/d +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x), x) == -2*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))*sqrt(b*c-a*d)/b**(3/2) + 2*sqrt(c + d*x)/b +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**2, x) == -d*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(3/2)*sqrt(b*c-a*d))-sqrt(c + d*x)/(b*(a + b*x)) +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**3, x) == 1/4*d**2*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(3/2)*(b*c-a*d)**(3/2))-1/2*sqrt(c + d*x)/(b*(a + b*x)**2)-1/4*d*sqrt(c + d*x)/(b*(b*c-a*d)*(a + b*x)) +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**4, x) == -1/8*d**3*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(3/2)*(b*c-a*d)**(5/2))-1/3*sqrt(c + d*x)/(b*(a + b*x)**3)-1/12*d*sqrt(c + d*x)/(b*(b*c-a*d)*(a + b*x)**2) + 1/8*d**2*sqrt(c + d*x)/(b*(b*c-a*d)**2*(a + b*x)) +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**5, x) == 5/64*d**4*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(3/2)*(b*c-a*d)**(7/2))-1/4*sqrt(c + d*x)/(b*(a + b*x)**4)-1/24*d*sqrt(c + d*x)/(b*(b*c-a*d)*(a + b*x)**3) + 5/96*d**2*sqrt(c + d*x)/(b*(b*c-a*d)**2*(a + b*x)**2)-5/64*d**3*sqrt(c + d*x)/(b*(b*c-a*d)**3*(a + b*x)) +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**6, x) == -7/128*d**5*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(3/2)*(b*c-a*d)**(9/2))-1/5*sqrt(c + d*x)/(b*(a + b*x)**5)-1/40*d*sqrt(c + d*x)/(b*(b*c-a*d)*(a + b*x)**4) + 7/240*d**2*sqrt(c + d*x)/(b*(b*c-a*d)**2*(a + b*x)**3)-7/192*d**3*sqrt(c + d*x)/(b*(b*c-a*d)**3*(a + b*x)**2) + 7/128*d**4*sqrt(c + d*x)/(b*(b*c-a*d)**4*(a + b*x)) +assert rubi_integrate((a + b*x)**5*(c + d*x)**(3/2), x) == -2/5*(b*c-a*d)**5*(c + d*x)**(5/2)/d**6 + 10/7*b*(b*c-a*d)**4*(c + d*x)**(7/2)/d**6-20/9*b**2*(b*c-a*d)**3*(c + d*x)**(9/2)/d**6 + 20/11*b**3*(b*c-a*d)**2*(c + d*x)**(11/2)/d**6-10/13*b**4*(b*c-a*d)*(c + d*x)**(13/2)/d**6 + 2/15*b**5*(c + d*x)**(15/2)/d**6 +assert rubi_integrate((a + b*x)**4*(c + d*x)**(3/2), x) == 2/5*(b*c-a*d)**4*(c + d*x)**(5/2)/d**5-8/7*b*(b*c-a*d)**3*(c + d*x)**(7/2)/d**5 + 4/3*b**2*(b*c-a*d)**2*(c + d*x)**(9/2)/d**5-8/11*b**3*(b*c-a*d)*(c + d*x)**(11/2)/d**5 + 2/13*b**4*(c + d*x)**(13/2)/d**5 +assert rubi_integrate((a + b*x)**3*(c + d*x)**(3/2), x) == -2/5*(b*c-a*d)**3*(c + d*x)**(5/2)/d**4 + 6/7*b*(b*c-a*d)**2*(c + d*x)**(7/2)/d**4-2/3*b**2*(b*c-a*d)*(c + d*x)**(9/2)/d**4 + 2/11*b**3*(c + d*x)**(11/2)/d**4 +assert rubi_integrate((a + b*x)**2*(c + d*x)**(3/2), x) == 2/5*(b*c-a*d)**2*(c + d*x)**(5/2)/d**3-4/7*b*(b*c-a*d)*(c + d*x)**(7/2)/d**3 + 2/9*b**2*(c + d*x)**(9/2)/d**3 +assert rubi_integrate((a + b*x)*(c + d*x)**(3/2), x) == -2/5*(b*c-a*d)*(c + d*x)**(5/2)/d**2 + 2/7*b*(c + d*x)**(7/2)/d**2 +assert rubi_integrate((c + d*x)**(3/2), x) == 2/5*(c + d*x)**(5/2)/d +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x), x) == 2/3*(c + d*x)**(3/2)/b-2*(b*c-a*d)**(3/2)*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/b**(5/2) + 2*(b*c-a*d)*sqrt(c + d*x)/b**2 +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**2, x) == -(c + d*x)**(3/2)/(b*(a + b*x))-3*d*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))*sqrt(b*c-a*d)/b**(5/2) + 3*d*sqrt(c + d*x)/b**2 +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**3, x) == -1/2*(c + d*x)**(3/2)/(b*(a + b*x)**2)-3/4*d**2*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(5/2)*sqrt(b*c-a*d))-3/4*d*sqrt(c + d*x)/(b**2*(a + b*x)) +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**4, x) == -1/3*(c + d*x)**(3/2)/(b*(a + b*x)**3) + 1/8*d**3*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(5/2)*(b*c-a*d)**(3/2))-1/4*d*sqrt(c + d*x)/(b**2*(a + b*x)**2)-1/8*d**2*sqrt(c + d*x)/(b**2*(b*c-a*d)*(a + b*x)) +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**5, x) == -1/4*(c + d*x)**(3/2)/(b*(a + b*x)**4)-3/64*d**4*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(5/2)*(b*c-a*d)**(5/2))-1/8*d*sqrt(c + d*x)/(b**2*(a + b*x)**3)-1/32*d**2*sqrt(c + d*x)/(b**2*(b*c-a*d)*(a + b*x)**2) + 3/64*d**3*sqrt(c + d*x)/(b**2*(b*c-a*d)**2*(a + b*x)) +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**6, x) == -1/5*(c + d*x)**(3/2)/(b*(a + b*x)**5) + 3/128*d**5*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(5/2)*(b*c-a*d)**(7/2))-3/40*d*sqrt(c + d*x)/(b**2*(a + b*x)**4)-1/80*d**2*sqrt(c + d*x)/(b**2*(b*c-a*d)*(a + b*x)**3) + 1/64*d**3*sqrt(c + d*x)/(b**2*(b*c-a*d)**2*(a + b*x)**2)-3/128*d**4*sqrt(c + d*x)/(b**2*(b*c-a*d)**3*(a + b*x)) +assert rubi_integrate((a + b*x)**5*(c + d*x)**(5/2), x) == -2/7*(b*c-a*d)**5*(c + d*x)**(7/2)/d**6 + 10/9*b*(b*c-a*d)**4*(c + d*x)**(9/2)/d**6-20/11*b**2*(b*c-a*d)**3*(c + d*x)**(11/2)/d**6 + 20/13*b**3*(b*c-a*d)**2*(c + d*x)**(13/2)/d**6-2/3*b**4*(b*c-a*d)*(c + d*x)**(15/2)/d**6 + 2/17*b**5*(c + d*x)**(17/2)/d**6 +assert rubi_integrate((a + b*x)**4*(c + d*x)**(5/2), x) == 2/7*(b*c-a*d)**4*(c + d*x)**(7/2)/d**5-8/9*b*(b*c-a*d)**3*(c + d*x)**(9/2)/d**5 + 12/11*b**2*(b*c-a*d)**2*(c + d*x)**(11/2)/d**5-8/13*b**3*(b*c-a*d)*(c + d*x)**(13/2)/d**5 + 2/15*b**4*(c + d*x)**(15/2)/d**5 +assert rubi_integrate((a + b*x)**3*(c + d*x)**(5/2), x) == -2/7*(b*c-a*d)**3*(c + d*x)**(7/2)/d**4 + 2/3*b*(b*c-a*d)**2*(c + d*x)**(9/2)/d**4-6/11*b**2*(b*c-a*d)*(c + d*x)**(11/2)/d**4 + 2/13*b**3*(c + d*x)**(13/2)/d**4 +assert rubi_integrate((a + b*x)**2*(c + d*x)**(5/2), x) == 2/7*(b*c-a*d)**2*(c + d*x)**(7/2)/d**3-4/9*b*(b*c-a*d)*(c + d*x)**(9/2)/d**3 + 2/11*b**2*(c + d*x)**(11/2)/d**3 +assert rubi_integrate((a + b*x)*(c + d*x)**(5/2), x) == -2/7*(b*c-a*d)*(c + d*x)**(7/2)/d**2 + 2/9*b*(c + d*x)**(9/2)/d**2 +assert rubi_integrate((c + d*x)**(5/2), x) == 2/7*(c + d*x)**(7/2)/d +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x), x) == 2/3*(b*c-a*d)*(c + d*x)**(3/2)/b**2 + 2/5*(c + d*x)**(5/2)/b-2*(b*c-a*d)**(5/2)*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/b**(7/2) + 2*(b*c-a*d)**2*sqrt(c + d*x)/b**3 +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**2, x) == 5/3*d*(c + d*x)**(3/2)/b**2-(c + d*x)**(5/2)/(b*(a + b*x))-5*d*(b*c-a*d)**(3/2)*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/b**(7/2) + 5*d*(b*c-a*d)*sqrt(c + d*x)/b**3 +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**3, x) == -5/4*d*(c + d*x)**(3/2)/(b**2*(a + b*x))-1/2*(c + d*x)**(5/2)/(b*(a + b*x)**2)-15/4*d**2*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))*sqrt(b*c-a*d)/b**(7/2) + 15/4*d**2*sqrt(c + d*x)/b**3 +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**4, x) == -5/12*d*(c + d*x)**(3/2)/(b**2*(a + b*x)**2)-1/3*(c + d*x)**(5/2)/(b*(a + b*x)**3)-5/8*d**3*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(7/2)*sqrt(b*c-a*d))-5/8*d**2*sqrt(c + d*x)/(b**3*(a + b*x)) +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**5, x) == -5/24*d*(c + d*x)**(3/2)/(b**2*(a + b*x)**3)-1/4*(c + d*x)**(5/2)/(b*(a + b*x)**4) + 5/64*d**4*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(7/2)*(b*c-a*d)**(3/2))-5/32*d**2*sqrt(c + d*x)/(b**3*(a + b*x)**2)-5/64*d**3*sqrt(c + d*x)/(b**3*(b*c-a*d)*(a + b*x)) +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**6, x) == -1/8*d*(c + d*x)**(3/2)/(b**2*(a + b*x)**4)-1/5*(c + d*x)**(5/2)/(b*(a + b*x)**5)-3/128*d**5*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b**(7/2)*(b*c-a*d)**(5/2))-1/16*d**2*sqrt(c + d*x)/(b**3*(a + b*x)**3)-1/64*d**3*sqrt(c + d*x)/(b**3*(b*c-a*d)*(a + b*x)**2) + 3/128*d**4*sqrt(c + d*x)/(b**3*(b*c-a*d)**2*(a + b*x)) +assert rubi_integrate(sqrt(-1 + x)/(1 + x)**2, x) == arctan(sqrt(-1 + x)/sqrt(2))/sqrt(2)-sqrt(-1 + x)/(1 + x) +assert rubi_integrate(sqrt(-1 + x)/(1 + x)**3, x) == 1/8*arctan(sqrt(-1 + x)/sqrt(2))/sqrt(2)-1/2*sqrt(-1 + x)/(1 + x)**2 + 1/8*sqrt(-1 + x)/(1 + x) + +# n<0 +assert rubi_integrate((a + b*x)**5/(c + d*x)**(1/2), x) == 10/3*b*(b*c-a*d)**4*(c + d*x)**(3/2)/d**6-4*b**2*(b*c-a*d)**3*(c + d*x)**(5/2)/d**6 + 20/7*b**3*(b*c-a*d)**2*(c + d*x)**(7/2)/d**6-10/9*b**4*(b*c-a*d)*(c + d*x)**(9/2)/d**6 + 2/11*b**5*(c + d*x)**(11/2)/d**6-2*(b*c-a*d)**5*sqrt(c + d*x)/d**6 +assert rubi_integrate((a + b*x)**4/(c + d*x)**(1/2), x) == -8/3*b*(b*c-a*d)**3*(c + d*x)**(3/2)/d**5 + 12/5*b**2*(b*c-a*d)**2*(c + d*x)**(5/2)/d**5-8/7*b**3*(b*c-a*d)*(c + d*x)**(7/2)/d**5 + 2/9*b**4*(c + d*x)**(9/2)/d**5 + 2*(b*c-a*d)**4*sqrt(c + d*x)/d**5 +assert rubi_integrate((a + b*x)**3/(c + d*x)**(1/2), x) == 2*b*(b*c-a*d)**2*(c + d*x)**(3/2)/d**4-6/5*b**2*(b*c-a*d)*(c + d*x)**(5/2)/d**4 + 2/7*b**3*(c + d*x)**(7/2)/d**4-2*(b*c-a*d)**3*sqrt(c + d*x)/d**4 +assert rubi_integrate((a + b*x)**2/(c + d*x)**(1/2), x) == -4/3*b*(b*c-a*d)*(c + d*x)**(3/2)/d**3 + 2/5*b**2*(c + d*x)**(5/2)/d**3 + 2*(b*c-a*d)**2*sqrt(c + d*x)/d**3 +assert rubi_integrate((a + b*x)/(c + d*x)**(1/2), x) == 2/3*b*(c + d*x)**(3/2)/d**2-2*(b*c-a*d)*sqrt(c + d*x)/d**2 +assert rubi_integrate(1/(c + d*x)**(1/2), x) == 2*sqrt(c + d*x)/d +assert rubi_integrate(1/((a + b*x)*(c + d*x)**(1/2)), x) == -2*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(sqrt(b)*sqrt(b*c-a*d)) +assert rubi_integrate(1/((a + b*x)**2*(c + d*x)**(1/2)), x) == d*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/((b*c-a*d)**(3/2)*sqrt(b))-sqrt(c + d*x)/((b*c-a*d)*(a + b*x)) +assert rubi_integrate(1/((a + b*x)**3*(c + d*x)**(1/2)), x) == -3/4*d**2*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/((b*c-a*d)**(5/2)*sqrt(b))-1/2*sqrt(c + d*x)/((b*c-a*d)*(a + b*x)**2) + 3/4*d*sqrt(c + d*x)/((b*c-a*d)**2*(a + b*x)) +assert rubi_integrate(1/((a + b*x)**4*(c + d*x)**(1/2)), x) == 5/8*d**3*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/((b*c-a*d)**(7/2)*sqrt(b))-1/3*sqrt(c + d*x)/((b*c-a*d)*(a + b*x)**3) + 5/12*d*sqrt(c + d*x)/((b*c-a*d)**2*(a + b*x)**2)-5/8*d**2*sqrt(c + d*x)/((b*c-a*d)**3*(a + b*x)) +assert rubi_integrate(1/((a + b*x)**5*(c + d*x)**(1/2)), x) == -35/64*d**4*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/((b*c-a*d)**(9/2)*sqrt(b))-1/4*sqrt(c + d*x)/((b*c-a*d)*(a + b*x)**4) + 7/24*d*sqrt(c + d*x)/((b*c-a*d)**2*(a + b*x)**3)-35/96*d**2*sqrt(c + d*x)/((b*c-a*d)**3*(a + b*x)**2) + 35/64*d**3*sqrt(c + d*x)/((b*c-a*d)**4*(a + b*x)) +assert rubi_integrate((a + b*x)**5/(c + d*x)**(3/2), x) == -20/3*b**2*(b*c-a*d)**3*(c + d*x)**(3/2)/d**6 + 4*b**3*(b*c-a*d)**2*(c + d*x)**(5/2)/d**6-10/7*b**4*(b*c-a*d)*(c + d*x)**(7/2)/d**6 + 2/9*b**5*(c + d*x)**(9/2)/d**6 + 2*(b*c-a*d)**5/(d**6*sqrt(c + d*x)) + 10*b*(b*c-a*d)**4*sqrt(c + d*x)/d**6 +assert rubi_integrate((a + b*x)**4/(c + d*x)**(3/2), x) == 4*b**2*(b*c-a*d)**2*(c + d*x)**(3/2)/d**5-8/5*b**3*(b*c-a*d)*(c + d*x)**(5/2)/d**5 + 2/7*b**4*(c + d*x)**(7/2)/d**5-2*(b*c-a*d)**4/(d**5*sqrt(c + d*x))-8*b*(b*c-a*d)**3*sqrt(c + d*x)/d**5 +assert rubi_integrate((a + b*x)**3/(c + d*x)**(3/2), x) == -2*b**2*(b*c-a*d)*(c + d*x)**(3/2)/d**4 + 2/5*b**3*(c + d*x)**(5/2)/d**4 + 2*(b*c-a*d)**3/(d**4*sqrt(c + d*x)) + 6*b*(b*c-a*d)**2*sqrt(c + d*x)/d**4 +assert rubi_integrate((a + b*x)**2/(c + d*x)**(3/2), x) == 2/3*b**2*(c + d*x)**(3/2)/d**3-2*(b*c-a*d)**2/(d**3*sqrt(c + d*x))-4*b*(b*c-a*d)*sqrt(c + d*x)/d**3 +assert rubi_integrate((a + b*x)/(c + d*x)**(3/2), x) == 2*(b*c-a*d)/(d**2*sqrt(c + d*x)) + 2*b*sqrt(c + d*x)/d**2 +assert rubi_integrate(1/(c + d*x)**(3/2), x) == (-2)/(d*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)*(c + d*x)**(3/2)), x) == -2*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))*sqrt(b)/(b*c-a*d)**(3/2) + 2/((b*c-a*d)*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**2*(c + d*x)**(3/2)), x) == 3*d*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))*sqrt(b)/(b*c-a*d)**(5/2)-3*d/((b*c-a*d)**2*sqrt(c + d*x)) + (-1)/((b*c-a*d)*(a + b*x)*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**3*(c + d*x)**(3/2)), x) == -15/4*d**2*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))*sqrt(b)/(b*c-a*d)**(7/2) + 15/4*d**2/((b*c-a*d)**3*sqrt(c + d*x)) + (-1/2)/((b*c-a*d)*(a + b*x)**2*sqrt(c + d*x)) + 5/4*d/((b*c-a*d)**2*(a + b*x)*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**4*(c + d*x)**(3/2)), x) == 35/8*d**3*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))*sqrt(b)/(b*c-a*d)**(9/2)-35/8*d**3/((b*c-a*d)**4*sqrt(c + d*x)) + (-1/3)/((b*c-a*d)*(a + b*x)**3*sqrt(c + d*x)) + 7/12*d/((b*c-a*d)**2*(a + b*x)**2*sqrt(c + d*x))-35/24*d**2/((b*c-a*d)**3*(a + b*x)*sqrt(c + d*x)) +assert rubi_integrate((a + b*x)**5/(c + d*x)**(5/2), x) == 2/3*(b*c-a*d)**5/(d**6*(c + d*x)**(3/2)) + 20/3*b**3*(b*c-a*d)**2*(c + d*x)**(3/2)/d**6-2*b**4*(b*c-a*d)*(c + d*x)**(5/2)/d**6 + 2/7*b**5*(c + d*x)**(7/2)/d**6-10*b*(b*c-a*d)**4/(d**6*sqrt(c + d*x))-20*b**2*(b*c-a*d)**3*sqrt(c + d*x)/d**6 +assert rubi_integrate((a + b*x)**4/(c + d*x)**(5/2), x) == -2/3*(b*c-a*d)**4/(d**5*(c + d*x)**(3/2))-8/3*b**3*(b*c-a*d)*(c + d*x)**(3/2)/d**5 + 2/5*b**4*(c + d*x)**(5/2)/d**5 + 8*b*(b*c-a*d)**3/(d**5*sqrt(c + d*x)) + 12*b**2*(b*c-a*d)**2*sqrt(c + d*x)/d**5 +assert rubi_integrate((a + b*x)**3/(c + d*x)**(5/2), x) == 2/3*(b*c-a*d)**3/(d**4*(c + d*x)**(3/2)) + 2/3*b**3*(c + d*x)**(3/2)/d**4-6*b*(b*c-a*d)**2/(d**4*sqrt(c + d*x))-6*b**2*(b*c-a*d)*sqrt(c + d*x)/d**4 +assert rubi_integrate((a + b*x)**2/(c + d*x)**(5/2), x) == -2/3*(b*c-a*d)**2/(d**3*(c + d*x)**(3/2)) + 4*b*(b*c-a*d)/(d**3*sqrt(c + d*x)) + 2*b**2*sqrt(c + d*x)/d**3 +assert rubi_integrate((a + b*x)/(c + d*x)**(5/2), x) == 2/3*(b*c-a*d)/(d**2*(c + d*x)**(3/2))-2*b/(d**2*sqrt(c + d*x)) +assert rubi_integrate(1/(c + d*x)**(5/2), x) == (-2/3)/(d*(c + d*x)**(3/2)) +assert rubi_integrate(1/((a + b*x)*(c + d*x)**(5/2)), x) == 2/3/((b*c-a*d)*(c + d*x)**(3/2))-2*b**(3/2)*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b*c-a*d)**(5/2) + 2*b/((b*c-a*d)**2*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**2*(c + d*x)**(5/2)), x) == -5/3*d/((b*c-a*d)**2*(c + d*x)**(3/2)) + (-1)/((b*c-a*d)*(a + b*x)*(c + d*x)**(3/2)) + 5*b**(3/2)*d*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b*c-a*d)**(7/2)-5*b*d/((b*c-a*d)**3*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**3*(c + d*x)**(5/2)), x) == 35/12*d**2/((b*c-a*d)**3*(c + d*x)**(3/2)) + (-1/2)/((b*c-a*d)*(a + b*x)**2*(c + d*x)**(3/2)) + 7/4*d/((b*c-a*d)**2*(a + b*x)*(c + d*x)**(3/2))-35/4*b**(3/2)*d**2*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b*c-a*d)**(9/2) + 35/4*b*d**2/((b*c-a*d)**4*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**4*(c + d*x)**(5/2)), x) == -35/8*d**3/((b*c-a*d)**4*(c + d*x)**(3/2)) + (-1/3)/((b*c-a*d)*(a + b*x)**3*(c + d*x)**(3/2)) + 3/4*d/((b*c-a*d)**2*(a + b*x)**2*(c + d*x)**(3/2))-21/8*d**2/((b*c-a*d)**3*(a + b*x)*(c + d*x)**(3/2)) + 105/8*b**(3/2)*d**3*arctanh(sqrt(b)*sqrt(c + d*x)/sqrt(b*c-a*d))/(b*c-a*d)**(11/2)-105/8*b*d**3/((b*c-a*d)**5*sqrt(c + d*x)) +assert rubi_integrate((a + b*x)**5*(a*c + b*c*x)**(3/2), x) == 2/15*(a*c + b*c*x)**(15/2)/(b*c**6) +assert rubi_integrate((a + b*x)**5*(a*c + b*c*x)**(1/2), x) == 2/13*(a*c + b*c*x)**(13/2)/(b*c**6) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**(1/2), x) == 2/11*(a*c + b*c*x)**(11/2)/(b*c**6) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**(3/2), x) == 2/9*(a*c + b*c*x)**(9/2)/(b*c**6) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**(5/2), x) == 2/7*(a*c + b*c*x)**(7/2)/(b*c**6) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**(7/2), x) == 2/5*(a*c + b*c*x)**(5/2)/(b*c**6) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**(9/2), x) == 2/3*(a*c + b*c*x)**(3/2)/(b*c**6) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**(11/2), x) == 2*sqrt(a*c + b*c*x)/(b*c**6) +assert rubi_integrate((a + b*x)**5/(a*c + b*c*x)**(13/2), x) == (-2)/(b*c**6*sqrt(a*c + b*c*x)) +assert rubi_integrate(1/((-2 + x)*sqrt(2 + x)), x) == -arctanh(1/2*sqrt(2 + x)) +assert rubi_integrate(1/((2 + 3*x)*sqrt(1 + 5*x)), x) == 2*arctan(sqrt(3/7)*sqrt(1 + 5*x))/sqrt(21) + +# Integrands of the form (a + b x)**m (c + d x)**(n/3 +assert rubi_integrate((1-x)**(1/3)/(1 + x), x) == 3*(1-x)**(1/3) + 3*log(2**(1/3)-(1-x)**(1/3))/2**(2/3)-log(1 + x)/2**(2/3)-2**(1/3)*arctan((1 + 2**(2/3)*(1-x)**(1/3))/sqrt(3))*sqrt(3) +assert rubi_integrate((3-2*x)**(1/3)*(7 + x), x) == -51/16*(3-2*x)**(4/3) + 3/28*(3-2*x)**(7/3) +assert rubi_integrate((1-x)**(1/3)*(1 + x)**2, x) == -3*(1-x)**(4/3) + 12/7*(1-x)**(7/3)-3/10*(1-x)**(10/3) +assert rubi_integrate(1/((a + b*x)*(c + d*x)**(1/3)), x) == -1/2*log(a + b*x)/(b**(2/3)*(b*c-a*d)**(1/3)) + 3/2*log((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(b**(2/3)*(b*c-a*d)**(1/3)) + arctan((1 + 2*b**(1/3)*(c + d*x)**(1/3)/(b*c-a*d)**(1/3))/sqrt(3))*sqrt(3)/(b**(2/3)*(b*c-a*d)**(1/3)) +assert rubi_integrate(1/((a + b*x)*(c + d*x)**(2/3)), x) == -1/2*log(a + b*x)/(b**(1/3)*(b*c-a*d)**(2/3)) + 3/2*log((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(b**(1/3)*(b*c-a*d)**(2/3))-arctan((1 + 2*b**(1/3)*(c + d*x)**(1/3)/(b*c-a*d)**(1/3))/sqrt(3))*sqrt(3)/(b**(1/3)*(b*c-a*d)**(2/3)) + +# Integrands of the form (a + b x)**(m/2) (c + d x)**(n/2 + +# n>0 +assert rubi_integrate((a + b*x)**(7/2)*(c + d*x)**(1/2), x) == 7/128*(b*c-a*d)**5*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(3/2)*d**(9/2)) + 7/192*(b*c-a*d)**3*(a + b*x)**(3/2)*sqrt(c + d*x)/(b*d**3)-7/240*(b*c-a*d)**2*(a + b*x)**(5/2)*sqrt(c + d*x)/(b*d**2) + 1/40*(b*c-a*d)*(a + b*x)**(7/2)*sqrt(c + d*x)/(b*d) + 1/5*(a + b*x)**(9/2)*sqrt(c + d*x)/b-7/128*(b*c-a*d)**4*sqrt(a + b*x)*sqrt(c + d*x)/(b*d**4) +assert rubi_integrate((a + b*x)**(5/2)*(c + d*x)**(1/2), x) == -5/64*(b*c-a*d)**4*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(3/2)*d**(7/2))-5/96*(b*c-a*d)**2*(a + b*x)**(3/2)*sqrt(c + d*x)/(b*d**2) + 1/24*(b*c-a*d)*(a + b*x)**(5/2)*sqrt(c + d*x)/(b*d) + 1/4*(a + b*x)**(7/2)*sqrt(c + d*x)/b + 5/64*(b*c-a*d)**3*sqrt(a + b*x)*sqrt(c + d*x)/(b*d**3) +assert rubi_integrate((a + b*x)**(3/2)*(c + d*x)**(1/2), x) == 1/8*(b*c-a*d)**3*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(3/2)*d**(5/2)) + 1/12*(b*c-a*d)*(a + b*x)**(3/2)*sqrt(c + d*x)/(b*d) + 1/3*(a + b*x)**(5/2)*sqrt(c + d*x)/b-1/8*(b*c-a*d)**2*sqrt(a + b*x)*sqrt(c + d*x)/(b*d**2) +assert rubi_integrate((a + b*x)**(1/2)*(c + d*x)**(1/2), x) == -1/4*(b*c-a*d)**2*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(3/2)*d**(3/2)) + 1/2*(a + b*x)**(3/2)*sqrt(c + d*x)/b + 1/4*(b*c-a*d)*sqrt(a + b*x)*sqrt(c + d*x)/(b*d) +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**(1/2), x) == (b*c-a*d)*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(3/2)*sqrt(d)) + sqrt(a + b*x)*sqrt(c + d*x)/b +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**(3/2), x) == 2*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))*sqrt(d)/b**(3/2)-2*sqrt(c + d*x)/(b*sqrt(a + b*x)) +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**(5/2), x) == -2/3*(c + d*x)**(3/2)/((b*c-a*d)*(a + b*x)**(3/2)) +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**(7/2), x) == -2/5*(c + d*x)**(3/2)/((b*c-a*d)*(a + b*x)**(5/2)) + 4/15*d*(c + d*x)**(3/2)/((b*c-a*d)**2*(a + b*x)**(3/2)) +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**(9/2), x) == -2/7*(c + d*x)**(3/2)/((b*c-a*d)*(a + b*x)**(7/2)) + 8/35*d*(c + d*x)**(3/2)/((b*c-a*d)**2*(a + b*x)**(5/2))-16/105*d**2*(c + d*x)**(3/2)/((b*c-a*d)**3*(a + b*x)**(3/2)) +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**(11/2), x) == -2/9*(c + d*x)**(3/2)/((b*c-a*d)*(a + b*x)**(9/2)) + 4/21*d*(c + d*x)**(3/2)/((b*c-a*d)**2*(a + b*x)**(7/2))-16/105*d**2*(c + d*x)**(3/2)/((b*c-a*d)**3*(a + b*x)**(5/2)) + 32/315*d**3*(c + d*x)**(3/2)/((b*c-a*d)**4*(a + b*x)**(3/2)) +assert rubi_integrate((c + d*x)**(1/2)/(a + b*x)**(13/2), x) == -2/11*(c + d*x)**(3/2)/((b*c-a*d)*(a + b*x)**(11/2)) + 16/99*d*(c + d*x)**(3/2)/((b*c-a*d)**2*(a + b*x)**(9/2))-32/231*d**2*(c + d*x)**(3/2)/((b*c-a*d)**3*(a + b*x)**(7/2)) + 128/1155*d**3*(c + d*x)**(3/2)/((b*c-a*d)**4*(a + b*x)**(5/2))-256/3465*d**4*(c + d*x)**(3/2)/((b*c-a*d)**5*(a + b*x)**(3/2)) +assert rubi_integrate((a + b*x)**(5/2)*(c + d*x)**(3/2), x) == 1/5*(a + b*x)**(7/2)*(c + d*x)**(3/2)/b-3/128*(b*c-a*d)**5*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(5/2)*d**(7/2))-1/64*(b*c-a*d)**3*(a + b*x)**(3/2)*sqrt(c + d*x)/(b**2*d**2) + 1/80*(b*c-a*d)**2*(a + b*x)**(5/2)*sqrt(c + d*x)/(b**2*d) + 3/40*(b*c-a*d)*(a + b*x)**(7/2)*sqrt(c + d*x)/b**2 + 3/128*(b*c-a*d)**4*sqrt(a + b*x)*sqrt(c + d*x)/(b**2*d**3) +assert rubi_integrate((a + b*x)**(3/2)*(c + d*x)**(3/2), x) == 1/4*(a + b*x)**(5/2)*(c + d*x)**(3/2)/b + 3/64*(b*c-a*d)**4*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(5/2)*d**(5/2)) + 1/32*(b*c-a*d)**2*(a + b*x)**(3/2)*sqrt(c + d*x)/(b**2*d) + 1/8*(b*c-a*d)*(a + b*x)**(5/2)*sqrt(c + d*x)/b**2-3/64*(b*c-a*d)**3*sqrt(a + b*x)*sqrt(c + d*x)/(b**2*d**2) +assert rubi_integrate((a + b*x)**(1/2)*(c + d*x)**(3/2), x) == 1/3*(a + b*x)**(3/2)*(c + d*x)**(3/2)/b-1/8*(b*c-a*d)**3*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(5/2)*d**(3/2)) + 1/4*(b*c-a*d)*(a + b*x)**(3/2)*sqrt(c + d*x)/b**2 + 1/8*(b*c-a*d)**2*sqrt(a + b*x)*sqrt(c + d*x)/(b**2*d) +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**(1/2), x) == 3/4*(b*c-a*d)**2*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(5/2)*sqrt(d)) + 1/2*(c + d*x)**(3/2)*sqrt(a + b*x)/b + 3/4*(b*c-a*d)*sqrt(a + b*x)*sqrt(c + d*x)/b**2 +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**(3/2), x) == 3*(b*c-a*d)*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))*sqrt(d)/b**(5/2)-2*(c + d*x)**(3/2)/(b*sqrt(a + b*x)) + 3*d*sqrt(a + b*x)*sqrt(c + d*x)/b**2 +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**(5/2), x) == -2/3*(c + d*x)**(3/2)/(b*(a + b*x)**(3/2)) + 2*d**(3/2)*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/b**(5/2)-2*d*sqrt(c + d*x)/(b**2*sqrt(a + b*x)) +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**(7/2), x) == -2/5*(c + d*x)**(5/2)/((b*c-a*d)*(a + b*x)**(5/2)) +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**(9/2), x) == -2/7*(c + d*x)**(5/2)/((b*c-a*d)*(a + b*x)**(7/2)) + 4/35*d*(c + d*x)**(5/2)/((b*c-a*d)**2*(a + b*x)**(5/2)) +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**(11/2), x) == -2/9*(c + d*x)**(5/2)/((b*c-a*d)*(a + b*x)**(9/2)) + 8/63*d*(c + d*x)**(5/2)/((b*c-a*d)**2*(a + b*x)**(7/2))-16/315*d**2*(c + d*x)**(5/2)/((b*c-a*d)**3*(a + b*x)**(5/2)) +assert rubi_integrate((c + d*x)**(3/2)/(a + b*x)**(13/2), x) == -2/11*(c + d*x)**(5/2)/((b*c-a*d)*(a + b*x)**(11/2)) + 4/33*d*(c + d*x)**(5/2)/((b*c-a*d)**2*(a + b*x)**(9/2))-16/231*d**2*(c + d*x)**(5/2)/((b*c-a*d)**3*(a + b*x)**(7/2)) + 32/1155*d**3*(c + d*x)**(5/2)/((b*c-a*d)**4*(a + b*x)**(5/2)) +assert rubi_integrate((a + b*x)**(5/2)*(c + d*x)**(5/2), x) == 1/12*(b*c-a*d)*(a + b*x)**(7/2)*(c + d*x)**(3/2)/b**2 + 1/6*(a + b*x)**(7/2)*(c + d*x)**(5/2)/b-5/512*(b*c-a*d)**6*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(7/2)*d**(7/2))-5/768*(b*c-a*d)**4*(a + b*x)**(3/2)*sqrt(c + d*x)/(b**3*d**2) + 1/192*(b*c-a*d)**3*(a + b*x)**(5/2)*sqrt(c + d*x)/(b**3*d) + 1/32*(b*c-a*d)**2*(a + b*x)**(7/2)*sqrt(c + d*x)/b**3 + 5/512*(b*c-a*d)**5*sqrt(a + b*x)*sqrt(c + d*x)/(b**3*d**3) +assert rubi_integrate((a + b*x)**(3/2)*(c + d*x)**(5/2), x) == 1/8*(b*c-a*d)*(a + b*x)**(5/2)*(c + d*x)**(3/2)/b**2 + 1/5*(a + b*x)**(5/2)*(c + d*x)**(5/2)/b + 3/128*(b*c-a*d)**5*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(7/2)*d**(5/2)) + 1/64*(b*c-a*d)**3*(a + b*x)**(3/2)*sqrt(c + d*x)/(b**3*d) + 1/16*(b*c-a*d)**2*(a + b*x)**(5/2)*sqrt(c + d*x)/b**3-3/128*(b*c-a*d)**4*sqrt(a + b*x)*sqrt(c + d*x)/(b**3*d**2) +assert rubi_integrate((a + b*x)**(1/2)*(c + d*x)**(5/2), x) == 5/24*(b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(3/2)/b**2 + 1/4*(a + b*x)**(3/2)*(c + d*x)**(5/2)/b-5/64*(b*c-a*d)**4*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(7/2)*d**(3/2)) + 5/32*(b*c-a*d)**2*(a + b*x)**(3/2)*sqrt(c + d*x)/b**3 + 5/64*(b*c-a*d)**3*sqrt(a + b*x)*sqrt(c + d*x)/(b**3*d) +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**(1/2), x) == 5/8*(b*c-a*d)**3*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(b**(7/2)*sqrt(d)) + 5/12*(b*c-a*d)*(c + d*x)**(3/2)*sqrt(a + b*x)/b**2 + 1/3*(c + d*x)**(5/2)*sqrt(a + b*x)/b + 5/8*(b*c-a*d)**2*sqrt(a + b*x)*sqrt(c + d*x)/b**3 +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**(3/2), x) == 15/4*(b*c-a*d)**2*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))*sqrt(d)/b**(7/2)-2*(c + d*x)**(5/2)/(b*sqrt(a + b*x)) + 5/2*d*(c + d*x)**(3/2)*sqrt(a + b*x)/b**2 + 15/4*d*(b*c-a*d)*sqrt(a + b*x)*sqrt(c + d*x)/b**3 +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**(5/2), x) == -2/3*(c + d*x)**(5/2)/(b*(a + b*x)**(3/2)) + 5*d**(3/2)*(b*c-a*d)*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/b**(7/2)-10/3*d*(c + d*x)**(3/2)/(b**2*sqrt(a + b*x)) + 5*d**2*sqrt(a + b*x)*sqrt(c + d*x)/b**3 +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**(7/2), x) == -2/3*d*(c + d*x)**(3/2)/(b**2*(a + b*x)**(3/2))-2/5*(c + d*x)**(5/2)/(b*(a + b*x)**(5/2)) + 2*d**(5/2)*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/b**(7/2)-2*d**2*sqrt(c + d*x)/(b**3*sqrt(a + b*x)) +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**(9/2), x) == -2/7*(c + d*x)**(7/2)/((b*c-a*d)*(a + b*x)**(7/2)) +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**(11/2), x) == -2/9*(c + d*x)**(7/2)/((b*c-a*d)*(a + b*x)**(9/2)) + 4/63*d*(c + d*x)**(7/2)/((b*c-a*d)**2*(a + b*x)**(7/2)) +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**(13/2), x) == -2/11*(c + d*x)**(7/2)/((b*c-a*d)*(a + b*x)**(11/2)) + 8/99*d*(c + d*x)**(7/2)/((b*c-a*d)**2*(a + b*x)**(9/2))-16/693*d**2*(c + d*x)**(7/2)/((b*c-a*d)**3*(a + b*x)**(7/2)) +assert rubi_integrate((c + d*x)**(5/2)/(a + b*x)**(15/2), x) == -2/13*(c + d*x)**(7/2)/((b*c-a*d)*(a + b*x)**(13/2)) + 12/143*d*(c + d*x)**(7/2)/((b*c-a*d)**2*(a + b*x)**(11/2))-16/429*d**2*(c + d*x)**(7/2)/((b*c-a*d)**3*(a + b*x)**(9/2)) + 32/3003*d**3*(c + d*x)**(7/2)/((b*c-a*d)**4*(a + b*x)**(7/2)) + +# n<0 +assert rubi_integrate((a + b*x)**(7/2)/(c + d*x)**(1/2), x) == 35/64*(b*c-a*d)**4*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(d**(9/2)*sqrt(b)) + 35/96*(b*c-a*d)**2*(a + b*x)**(3/2)*sqrt(c + d*x)/d**3-7/24*(b*c-a*d)*(a + b*x)**(5/2)*sqrt(c + d*x)/d**2 + 1/4*(a + b*x)**(7/2)*sqrt(c + d*x)/d-35/64*(b*c-a*d)**3*sqrt(a + b*x)*sqrt(c + d*x)/d**4 +assert rubi_integrate((a + b*x)**(5/2)/(c + d*x)**(1/2), x) == -5/8*(b*c-a*d)**3*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(d**(7/2)*sqrt(b))-5/12*(b*c-a*d)*(a + b*x)**(3/2)*sqrt(c + d*x)/d**2 + 1/3*(a + b*x)**(5/2)*sqrt(c + d*x)/d + 5/8*(b*c-a*d)**2*sqrt(a + b*x)*sqrt(c + d*x)/d**3 +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(1/2), x) == 3/4*(b*c-a*d)**2*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(d**(5/2)*sqrt(b)) + 1/2*(a + b*x)**(3/2)*sqrt(c + d*x)/d-3/4*(b*c-a*d)*sqrt(a + b*x)*sqrt(c + d*x)/d**2 +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(1/2), x) == -(b*c-a*d)*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(d**(3/2)*sqrt(b)) + sqrt(a + b*x)*sqrt(c + d*x)/d +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(1/2)), x) == 2*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(sqrt(b)*sqrt(d)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(1/2)), x) == -2*sqrt(c + d*x)/((b*c-a*d)*sqrt(a + b*x)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(1/2)), x) == -2/3*sqrt(c + d*x)/((b*c-a*d)*(a + b*x)**(3/2)) + 4/3*d*sqrt(c + d*x)/((b*c-a*d)**2*sqrt(a + b*x)) +assert rubi_integrate(1/((a + b*x)**(7/2)*(c + d*x)**(1/2)), x) == -2/5*sqrt(c + d*x)/((b*c-a*d)*(a + b*x)**(5/2)) + 8/15*d*sqrt(c + d*x)/((b*c-a*d)**2*(a + b*x)**(3/2))-16/15*d**2*sqrt(c + d*x)/((b*c-a*d)**3*sqrt(a + b*x)) +assert rubi_integrate(1/((a + b*x)**(9/2)*(c + d*x)**(1/2)), x) == -2/7*sqrt(c + d*x)/((b*c-a*d)*(a + b*x)**(7/2)) + 12/35*d*sqrt(c + d*x)/((b*c-a*d)**2*(a + b*x)**(5/2))-16/35*d**2*sqrt(c + d*x)/((b*c-a*d)**3*(a + b*x)**(3/2)) + 32/35*d**3*sqrt(c + d*x)/((b*c-a*d)**4*sqrt(a + b*x)) +assert rubi_integrate(1/((a + b*x)**(11/2)*(c + d*x)**(1/2)), x) == -2/9*sqrt(c + d*x)/((b*c-a*d)*(a + b*x)**(9/2)) + 16/63*d*sqrt(c + d*x)/((b*c-a*d)**2*(a + b*x)**(7/2))-32/105*d**2*sqrt(c + d*x)/((b*c-a*d)**3*(a + b*x)**(5/2)) + 128/315*d**3*sqrt(c + d*x)/((b*c-a*d)**4*(a + b*x)**(3/2))-256/315*d**4*sqrt(c + d*x)/((b*c-a*d)**5*sqrt(a + b*x)) +assert rubi_integrate((a + b*x)**(7/2)/(c + d*x)**(3/2), x) == -35/8*(b*c-a*d)**3*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))*sqrt(b)/d**(9/2)-2*(a + b*x)**(7/2)/(d*sqrt(c + d*x))-35/12*b*(b*c-a*d)*(a + b*x)**(3/2)*sqrt(c + d*x)/d**3 + 7/3*b*(a + b*x)**(5/2)*sqrt(c + d*x)/d**2 + 35/8*b*(b*c-a*d)**2*sqrt(a + b*x)*sqrt(c + d*x)/d**4 +assert rubi_integrate((a + b*x)**(5/2)/(c + d*x)**(3/2), x) == 15/4*(b*c-a*d)**2*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))*sqrt(b)/d**(7/2)-2*(a + b*x)**(5/2)/(d*sqrt(c + d*x)) + 5/2*b*(a + b*x)**(3/2)*sqrt(c + d*x)/d**2-15/4*b*(b*c-a*d)*sqrt(a + b*x)*sqrt(c + d*x)/d**3 +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(3/2), x) == -3*(b*c-a*d)*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))*sqrt(b)/d**(5/2)-2*(a + b*x)**(3/2)/(d*sqrt(c + d*x)) + 3*b*sqrt(a + b*x)*sqrt(c + d*x)/d**2 +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(3/2), x) == 2*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))*sqrt(b)/d**(3/2)-2*sqrt(a + b*x)/(d*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(3/2)), x) == 2*sqrt(a + b*x)/((b*c-a*d)*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(3/2)), x) == (-2)/((b*c-a*d)*sqrt(a + b*x)*sqrt(c + d*x))-4*d*sqrt(a + b*x)/((b*c-a*d)**2*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(3/2)), x) == (-2/3)/((b*c-a*d)*(a + b*x)**(3/2)*sqrt(c + d*x)) + 8/3*d/((b*c-a*d)**2*sqrt(a + b*x)*sqrt(c + d*x)) + 16/3*d**2*sqrt(a + b*x)/((b*c-a*d)**3*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**(7/2)*(c + d*x)**(3/2)), x) == (-2/5)/((b*c-a*d)*(a + b*x)**(5/2)*sqrt(c + d*x)) + 4/5*d/((b*c-a*d)**2*(a + b*x)**(3/2)*sqrt(c + d*x))-16/5*d**2/((b*c-a*d)**3*sqrt(a + b*x)*sqrt(c + d*x))-32/5*d**3*sqrt(a + b*x)/((b*c-a*d)**4*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**(9/2)*(c + d*x)**(3/2)), x) == (-2/7)/((b*c-a*d)*(a + b*x)**(7/2)*sqrt(c + d*x)) + 16/35*d/((b*c-a*d)**2*(a + b*x)**(5/2)*sqrt(c + d*x))-32/35*d**2/((b*c-a*d)**3*(a + b*x)**(3/2)*sqrt(c + d*x)) + 128/35*d**3/((b*c-a*d)**4*sqrt(a + b*x)*sqrt(c + d*x)) + 256/35*d**4*sqrt(a + b*x)/((b*c-a*d)**5*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**(11/2)*(c + d*x)**(3/2)), x) == (-2/9)/((b*c-a*d)*(a + b*x)**(9/2)*sqrt(c + d*x)) + 20/63*d/((b*c-a*d)**2*(a + b*x)**(7/2)*sqrt(c + d*x))-32/63*d**2/((b*c-a*d)**3*(a + b*x)**(5/2)*sqrt(c + d*x)) + 64/63*d**3/((b*c-a*d)**4*(a + b*x)**(3/2)*sqrt(c + d*x))-256/63*d**4/((b*c-a*d)**5*sqrt(a + b*x)*sqrt(c + d*x))-512/63*d**5*sqrt(a + b*x)/((b*c-a*d)**6*sqrt(c + d*x)) +assert rubi_integrate((a + b*x)**(9/2)/(c + d*x)**(5/2), x) == -2/3*(a + b*x)**(9/2)/(d*(c + d*x)**(3/2))-105/8*b**(3/2)*(b*c-a*d)**3*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/d**(11/2)-6*b*(a + b*x)**(7/2)/(d**2*sqrt(c + d*x))-35/4*b**2*(b*c-a*d)*(a + b*x)**(3/2)*sqrt(c + d*x)/d**4 + 7*b**2*(a + b*x)**(5/2)*sqrt(c + d*x)/d**3 + 105/8*b**2*(b*c-a*d)**2*sqrt(a + b*x)*sqrt(c + d*x)/d**5 +assert rubi_integrate((a + b*x)**(7/2)/(c + d*x)**(5/2), x) == -2/3*(a + b*x)**(7/2)/(d*(c + d*x)**(3/2)) + 35/4*b**(3/2)*(b*c-a*d)**2*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/d**(9/2)-14/3*b*(a + b*x)**(5/2)/(d**2*sqrt(c + d*x)) + 35/6*b**2*(a + b*x)**(3/2)*sqrt(c + d*x)/d**3-35/4*b**2*(b*c-a*d)*sqrt(a + b*x)*sqrt(c + d*x)/d**4 +assert rubi_integrate((a + b*x)**(5/2)/(c + d*x)**(5/2), x) == -2/3*(a + b*x)**(5/2)/(d*(c + d*x)**(3/2))-5*b**(3/2)*(b*c-a*d)*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/d**(7/2)-10/3*b*(a + b*x)**(3/2)/(d**2*sqrt(c + d*x)) + 5*b**2*sqrt(a + b*x)*sqrt(c + d*x)/d**3 +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(5/2), x) == -2/3*(a + b*x)**(3/2)/(d*(c + d*x)**(3/2)) + 2*b**(3/2)*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/d**(5/2)-2*b*sqrt(a + b*x)/(d**2*sqrt(c + d*x)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(5/2), x) == 2/3*(a + b*x)**(3/2)/((b*c-a*d)*(c + d*x)**(3/2)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(5/2)), x) == 2/3*sqrt(a + b*x)/((b*c-a*d)*(c + d*x)**(3/2)) + 4/3*b*sqrt(a + b*x)/((b*c-a*d)**2*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(5/2)), x) == (-2)/((b*c-a*d)*(c + d*x)**(3/2)*sqrt(a + b*x))-8/3*d*sqrt(a + b*x)/((b*c-a*d)**2*(c + d*x)**(3/2))-16/3*b*d*sqrt(a + b*x)/((b*c-a*d)**3*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(5/2)), x) == (-2/3)/((b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(3/2)) + 4*d/((b*c-a*d)**2*(c + d*x)**(3/2)*sqrt(a + b*x)) + 16/3*d**2*sqrt(a + b*x)/((b*c-a*d)**3*(c + d*x)**(3/2)) + 32/3*b*d**2*sqrt(a + b*x)/((b*c-a*d)**4*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**(7/2)*(c + d*x)**(5/2)), x) == (-2/5)/((b*c-a*d)*(a + b*x)**(5/2)*(c + d*x)**(3/2)) + 16/15*d/((b*c-a*d)**2*(a + b*x)**(3/2)*(c + d*x)**(3/2))-32/5*d**2/((b*c-a*d)**3*(c + d*x)**(3/2)*sqrt(a + b*x))-128/15*d**3*sqrt(a + b*x)/((b*c-a*d)**4*(c + d*x)**(3/2))-256/15*b*d**3*sqrt(a + b*x)/((b*c-a*d)**5*sqrt(c + d*x)) +assert rubi_integrate(1/((a + b*x)**(9/2)*(c + d*x)**(5/2)), x) == (-2/7)/((b*c-a*d)*(a + b*x)**(7/2)*(c + d*x)**(3/2)) + 4/7*d/((b*c-a*d)**2*(a + b*x)**(5/2)*(c + d*x)**(3/2))-32/21*d**2/((b*c-a*d)**3*(a + b*x)**(3/2)*(c + d*x)**(3/2)) + 64/7*d**3/((b*c-a*d)**4*(c + d*x)**(3/2)*sqrt(a + b*x)) + 256/21*d**4*sqrt(a + b*x)/((b*c-a*d)**5*(c + d*x)**(3/2)) + 512/21*b*d**4*sqrt(a + b*x)/((b*c-a*d)**6*sqrt(c + d*x)) +assert rubi_integrate(1/(sqrt(a + b*x)*sqrt(4 + a + b*x)), x) == 2*arcsinh(1/2*sqrt(a + b*x))/b +assert rubi_integrate(1/(sqrt(2 + b*x)*sqrt(6 + b*x)), x) == 2*arcsinh(1/2*sqrt(2 + b*x))/b +assert rubi_integrate(1/(sqrt(1 + b*x)*sqrt(5 + b*x)), x) == 2*arcsinh(1/2*sqrt(1 + b*x))/b +assert rubi_integrate(1/(sqrt(b*x)*sqrt(4 + b*x)), x) == 2*arcsinh(1/2*sqrt(b*x))/b +assert rubi_integrate(1/(sqrt(-1 + b*x)*sqrt(3 + b*x)), x) == 2*arcsinh(1/2*sqrt(-1 + b*x))/b +assert rubi_integrate(1/(sqrt(-2 + b*x)*sqrt(2 + b*x)), x) == arccosh(1/2*b*x)/b +assert rubi_integrate(1/(sqrt(-3 + b*x)*sqrt(1 + b*x)), x) == 2*arcsinh(1/2*sqrt(-3 + b*x))/b +assert rubi_integrate(1/(sqrt(2 + b*x)*sqrt(3 + b*x)), x) == 2*arcsinh(sqrt(2 + b*x))/b +assert rubi_integrate(1/sqrt(2 + b*x)**2, x) == log(2 + b*x)/b +assert rubi_integrate(1/(sqrt(1 + b*x)*sqrt(2 + b*x)), x) == 2*arcsinh(sqrt(1 + b*x))/b +assert rubi_integrate(1/(sqrt(b*x)*sqrt(2 + b*x)), x) == 2*arcsinh(sqrt(b*x)/sqrt(2))/b +assert rubi_integrate(1/(sqrt(-1 + b*x)*sqrt(2 + b*x)), x) == 2*arcsinh(sqrt(-1 + b*x)/sqrt(3))/b +assert rubi_integrate(1/(sqrt(-2 + b*x)*sqrt(2 + b*x)), x) == arccosh(1/2*b*x)/b +assert rubi_integrate(1/(sqrt(-3 + b*x)*sqrt(2 + b*x)), x) == 2*arcsinh(sqrt(-3 + b*x)/sqrt(5))/b +assert rubi_integrate(1/(sqrt(3-b*x)*sqrt(2 + b*x)), x) == -arcsin(1/5*(1-2*b*x))/b +assert rubi_integrate(1/(sqrt(2-b*x)*sqrt(2 + b*x)), x) == arcsin(1/2*b*x)/b +assert rubi_integrate(1/(sqrt(1-b*x)*sqrt(2 + b*x)), x) == -arcsin(1/3*(-1-2*b*x))/b +assert rubi_integrate(1/(sqrt(-b*x)*sqrt(2 + b*x)), x) == arcsin(1 + b*x)/b +assert rubi_integrate(1/(sqrt(-1-b*x)*sqrt(2 + b*x)), x) == arcsin(3 + 2*b*x)/b +assert rubi_integrate(1/(sqrt(-2-b*x)*sqrt(2 + b*x)), x) == log(2 + b*x)*sqrt(2 + b*x)/(b*sqrt(-2-b*x)) +assert rubi_integrate(1/(sqrt(-3-b*x)*sqrt(2 + b*x)), x) == -2*arctan(sqrt(-3-b*x)/sqrt(2 + b*x))/b +assert rubi_integrate(1/(sqrt(2-b*x)*sqrt(3-b*x)), x) == -2*arcsinh(sqrt(2-b*x))/b +assert rubi_integrate(1/sqrt(2-b*x)**2, x) == -log(2-b*x)/b +assert rubi_integrate(1/(sqrt(1-b*x)*sqrt(2-b*x)), x) == -2*arcsinh(sqrt(1-b*x))/b +assert rubi_integrate(1/(sqrt(-b*x)*sqrt(2-b*x)), x) == -2*arcsinh(sqrt(-b*x)/sqrt(2))/b +assert rubi_integrate(1/(sqrt(-1-b*x)*sqrt(2-b*x)), x) == -2*arcsinh(sqrt(-1-b*x)/sqrt(3))/b +assert rubi_integrate(1/(sqrt(-2-b*x)*sqrt(2-b*x)), x) == -arccosh(-1/2*b*x)/b +assert rubi_integrate(1/(sqrt(-3-b*x)*sqrt(2-b*x)), x) == -2*arcsinh(sqrt(-3-b*x)/sqrt(5))/b +assert rubi_integrate(1/(sqrt(-4 + b*x)*sqrt(4 + b*x)), x) == arccosh(1/4*b*x)/b +assert rubi_integrate(1/(sqrt((-b + b*c)/d + b*x)*sqrt(c + d*x)), x) == 2*arctanh(sqrt(d)*sqrt(-b*(1-c)/d + b*x)/(sqrt(b)*sqrt(c + d*x)))/(sqrt(b)*sqrt(d)) +assert rubi_integrate(1/(sqrt(x)*sqrt(-3 + 2*x)), x) == arcsinh(sqrt(-3 + 2*x)/sqrt(3))*sqrt(2) +assert rubi_integrate(1/(sqrt(-3 + 2*x)*sqrt(2 + 3*x)), x) == arcsinh(sqrt(3/13)*sqrt(-3 + 2*x))*sqrt(2/3) +assert rubi_integrate(1/(sqrt(a + b*x)*sqrt(c + d*x)), x) == 2*arctanh(sqrt(d)*sqrt(a + b*x)/(sqrt(b)*sqrt(c + d*x)))/(sqrt(b)*sqrt(d)) +assert rubi_integrate(1/(sqrt((b-b*c)/d + b*x)*sqrt(c-d*x)), x) == 2*arctan(sqrt(d)*sqrt(b*(1-c)/d + b*x)/(sqrt(b)*sqrt(c-d*x)))/(sqrt(b)*sqrt(d)) +assert rubi_integrate(1/(sqrt(4-x)*sqrt(x)), x) == -arcsin(1/2*(2-x)) +assert rubi_integrate(1/(sqrt(3-2*x)*sqrt(x)), x) == arcsin(sqrt(2/3)*sqrt(x))*sqrt(2) +assert rubi_integrate(1/(sqrt(3-2*x)*sqrt(3 + 5*x)), x) == arcsin(sqrt(2/21)*sqrt(3 + 5*x))*sqrt(2/5) +assert rubi_integrate(1/(sqrt(a-b*x)*sqrt(c + d*x)), x) == -2*arctan(sqrt(d)*sqrt(a-b*x)/(sqrt(b)*sqrt(c + d*x)))/(sqrt(b)*sqrt(d)) + +# Integrands of the form (a + b x)**(m/2) (c + d x)**(n/3 + +# n>0 +assert rubi_integrate((a + b*x)**(3/2)*(c + d*x)**(1/3), x) == 12/187*(b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(1/3)/(b*d) + 6/17*(a + b*x)**(5/2)*(c + d*x)**(1/3)/b-108/935*(b*c-a*d)**2*(c + d*x)**(1/3)*sqrt(a + b*x)/(b*d**2)-108/935*3**(3/4)*(b*c-a*d)**3*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2-sqrt(3))/(b**(4/3)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(1/2)*(c + d*x)**(1/3), x) == 6/11*(a + b*x)**(3/2)*(c + d*x)**(1/3)/b + 12/55*(b*c-a*d)*(c + d*x)**(1/3)*sqrt(a + b*x)/(b*d) + 12/55*3**(3/4)*(b*c-a*d)**2*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2-sqrt(3))/(b**(4/3)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(1/2), x) == 6/5*(c + d*x)**(1/3)*sqrt(a + b*x)/b-4/5*3**(3/4)*(b*c-a*d)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2-sqrt(3))/(b**(4/3)*d*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(3/2), x) == -2*(c + d*x)**(1/3)/(b*sqrt(a + b*x))-4*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2-sqrt(3))/(3**(1/4)*b**(4/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(5/2), x) == -2/3*(c + d*x)**(1/3)/(b*(a + b*x)**(3/2))-4/9*d*(c + d*x)**(1/3)/(b*(b*c-a*d)*sqrt(a + b*x)) + 4/9*d*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2-sqrt(3))/(3**(1/4)*b**(4/3)*(b*c-a*d)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(7/2), x) == -2/5*(c + d*x)**(1/3)/(b*(a + b*x)**(5/2))-4/45*d*(c + d*x)**(1/3)/(b*(b*c-a*d)*(a + b*x)**(3/2)) + 28/135*d**2*(c + d*x)**(1/3)/(b*(b*c-a*d)**2*sqrt(a + b*x))-28/135*d**2*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2-sqrt(3))/(3**(1/4)*b**(4/3)*(b*c-a*d)**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) + +# n<0 +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(1/3), x) == 6/13*(a + b*x)**(3/2)*(c + d*x)**(2/3)/d-54/91*(b*c-a*d)*(c + d*x)**(2/3)*sqrt(a + b*x)/d**2-162/91*(b*c-a*d)**2*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(2/3)*d**2*(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))))-54/91*3**(3/4)*(b*c-a*d)**(7/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(2)*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)/(b**(2/3)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) + 81/91*3**(1/4)*(b*c-a*d)**(7/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticE((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2 + sqrt(3))/(b**(2/3)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(1/3), x) == 6/7*(c + d*x)**(2/3)*sqrt(a + b*x)/d + 18/7*(b*c-a*d)*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(2/3)*d*(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))) + 6/7*3**(3/4)*(b*c-a*d)**(4/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(2)*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)/(b**(2/3)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2))-9/7*3**(1/4)*(b*c-a*d)**(4/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticE((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2 + sqrt(3))/(b**(2/3)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(1/3)), x) == -6*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(2/3)*(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))))-2*3**(3/4)*(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(2)*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)/(b**(2/3)*d*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) + 3*3**(1/4)*(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticE((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2 + sqrt(3))/(b**(2/3)*d*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(1/3)), x) == -2*(c + d*x)**(2/3)/((b*c-a*d)*sqrt(a + b*x))-2*d*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(2/3)*(b*c-a*d)*(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))))-2*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(2)*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)/(3**(1/4)*b**(2/3)*(b*c-a*d)**(2/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) + 3**(1/4)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticE((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2 + sqrt(3))/(b**(2/3)*(b*c-a*d)**(2/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(1/3)), x) == -2/3*(c + d*x)**(2/3)/((b*c-a*d)*(a + b*x)**(3/2)) + 10/9*d*(c + d*x)**(2/3)/((b*c-a*d)**2*sqrt(a + b*x)) + 10/9*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(2/3)*(b*c-a*d)**2*(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))) + 10/9*d*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(2)*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)/(3**(1/4)*b**(2/3)*(b*c-a*d)**(5/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2))-5/3*d*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticE((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2 + sqrt(3))/(3**(3/4)*b**(2/3)*(b*c-a*d)**(5/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(2/3), x) == 6/11*(a + b*x)**(3/2)*(c + d*x)**(1/3)/d-54/55*(b*c-a*d)*(c + d*x)**(1/3)*sqrt(a + b*x)/d**2-54/55*3**(3/4)*(b*c-a*d)**2*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2-sqrt(3))/(b**(1/3)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(2/3), x) == 6/5*(c + d*x)**(1/3)*sqrt(a + b*x)/d + 6/5*3**(3/4)*(b*c-a*d)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2-sqrt(3))/(b**(1/3)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(2/3)), x) == -2*3**(3/4)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2-sqrt(3))/(b**(1/3)*d*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(2/3)), x) == -2*(c + d*x)**(1/3)/((b*c-a*d)*sqrt(a + b*x)) + 2*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2-sqrt(3))/(3**(1/4)*b**(1/3)*(b*c-a*d)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(2/3)), x) == -2/3*(c + d*x)**(1/3)/((b*c-a*d)*(a + b*x)**(3/2)) + 14/9*d*(c + d*x)**(1/3)/((b*c-a*d)**2*sqrt(a + b*x))-14/9*d*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*EllipticF((-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1 + sqrt(3)))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3))),sqrt(-7 + 4*sqrt(3)))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)*sqrt(2-sqrt(3))/(3**(1/4)*b**(1/3)*(b*c-a*d)**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-(b*c-a*d)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/(-b**(1/3)*(c + d*x)**(1/3) + (b*c-a*d)**(1/3)*(1-sqrt(3)))**2)) + +# Integrands of the form (a + b x)**(m/3) (c + d x)**(n/3 + +# n>0 +assert rubi_integrate((a + b*x)**(2/3)*(c + d*x)**(1/3), x) == 1/6*(b*c-a*d)*(a + b*x)**(2/3)*(c + d*x)**(1/3)/(b*d) + 1/2*(a + b*x)**(5/3)*(c + d*x)**(1/3)/b + 1/18*(b*c-a*d)**2*log(c + d*x)/(b**(4/3)*d**(5/3)) + 1/6*(b*c-a*d)**2*log(-1 + d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)))/(b**(4/3)*d**(5/3)) + 1/3*(b*c-a*d)**2*arctan(1/sqrt(3) + 2*d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)*sqrt(3)))/(b**(4/3)*d**(5/3)*sqrt(3)) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(1/3), x) == (a + b*x)**(2/3)*(c + d*x)**(1/3)/b-1/6*(b*c-a*d)*log(c + d*x)/(b**(4/3)*d**(2/3))-1/2*(b*c-a*d)*log(-1 + d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)))/(b**(4/3)*d**(2/3))-(b*c-a*d)*arctan(1/sqrt(3) + 2*d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)*sqrt(3)))/(b**(4/3)*d**(2/3)*sqrt(3)) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(4/3), x) == -3*(c + d*x)**(1/3)/(b*(a + b*x)**(1/3))-1/2*d**(1/3)*log(c + d*x)/b**(4/3)-3/2*d**(1/3)*log(-1 + d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)))/b**(4/3)-d**(1/3)*arctan(1/sqrt(3) + 2*d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)*sqrt(3)))*sqrt(3)/b**(4/3) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(7/3), x) == -3/4*(c + d*x)**(4/3)/((b*c-a*d)*(a + b*x)**(4/3)) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(10/3), x) == -3/7*(c + d*x)**(4/3)/((b*c-a*d)*(a + b*x)**(7/3)) + 9/28*d*(c + d*x)**(4/3)/((b*c-a*d)**2*(a + b*x)**(4/3)) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(13/3), x) == -3/10*(c + d*x)**(4/3)/((b*c-a*d)*(a + b*x)**(10/3)) + 9/35*d*(c + d*x)**(4/3)/((b*c-a*d)**2*(a + b*x)**(7/3))-27/140*d**2*(c + d*x)**(4/3)/((b*c-a*d)**3*(a + b*x)**(4/3)) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(16/3), x) == -3/13*(c + d*x)**(4/3)/((b*c-a*d)*(a + b*x)**(13/3)) + 27/130*d*(c + d*x)**(4/3)/((b*c-a*d)**2*(a + b*x)**(10/3))-81/455*d**2*(c + d*x)**(4/3)/((b*c-a*d)**3*(a + b*x)**(7/3)) + 243/1820*d**3*(c + d*x)**(4/3)/((b*c-a*d)**4*(a + b*x)**(4/3)) +assert rubi_integrate((a + b*x)**(4/3)*(c + d*x)**(1/3), x) == -3/20*(b*c-a*d)**2*(a + b*x)**(1/3)*(c + d*x)**(1/3)/(b*d**2) + 3/40*(b*c-a*d)*(a + b*x)**(4/3)*(c + d*x)**(1/3)/(b*d) + 3/8*(a + b*x)**(7/3)*(c + d*x)**(1/3)/b + 1/10*3**(3/4)*(b*c-a*d)**3*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2 + sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(2/3)*b**(4/3)*d**(7/3)*(a + b*x)**(2/3)*(c + d*x)**(2/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(1/3)*(c + d*x)**(1/3), x) == 3/10*(b*c-a*d)*(a + b*x)**(1/3)*(c + d*x)**(1/3)/(b*d) + 3/5*(a + b*x)**(4/3)*(c + d*x)**(1/3)/b-1/5*3**(3/4)*(b*c-a*d)**2*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2 + sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(2/3)*b**(4/3)*d**(4/3)*(a + b*x)**(2/3)*(c + d*x)**(2/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(2/3), x) == 3/2*(a + b*x)**(1/3)*(c + d*x)**(1/3)/b + 3**(3/4)*(b*c-a*d)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2 + sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(2/3)*b**(4/3)*d**(1/3)*(a + b*x)**(2/3)*(c + d*x)**(2/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(1/3)/(a + b*x)**(5/3), x) == -3/2*(c + d*x)**(1/3)/(b*(a + b*x)**(2/3)) + 3**(3/4)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2 + sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(2/3)*b**(4/3)*(a + b*x)**(2/3)*(c + d*x)**(2/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) + +# n<0 +assert rubi_integrate((a + b*x)**(4/3)/(c + d*x)**(1/3), x) == -2/3*(b*c-a*d)*(a + b*x)**(1/3)*(c + d*x)**(2/3)/d**2 + 1/2*(a + b*x)**(4/3)*(c + d*x)**(2/3)/d-1/9*(b*c-a*d)**2*log(a + b*x)/(b**(2/3)*d**(7/3))-1/3*(b*c-a*d)**2*log(-1 + b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)))/(b**(2/3)*d**(7/3))-2/3*(b*c-a*d)**2*arctan(1/sqrt(3) + 2*b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)*sqrt(3)))/(b**(2/3)*d**(7/3)*sqrt(3)) +assert rubi_integrate((a + b*x)**(1/3)/(c + d*x)**(1/3), x) == (a + b*x)**(1/3)*(c + d*x)**(2/3)/d + 1/6*(b*c-a*d)*log(a + b*x)/(b**(2/3)*d**(4/3)) + 1/2*(b*c-a*d)*log(-1 + b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)))/(b**(2/3)*d**(4/3)) + (b*c-a*d)*arctan(1/sqrt(3) + 2*b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)*sqrt(3)))/(b**(2/3)*d**(4/3)*sqrt(3)) +assert rubi_integrate(1/((a + b*x)**(2/3)*(c + d*x)**(1/3)), x) == -1/2*log(a + b*x)/(b**(2/3)*d**(1/3))-3/2*log(-1 + b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)))/(b**(2/3)*d**(1/3))-arctan(1/sqrt(3) + 2*b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)*sqrt(3)))*sqrt(3)/(b**(2/3)*d**(1/3)) +assert rubi_integrate(1/((a + b*x)**(5/3)*(c + d*x)**(1/3)), x) == -3/2*(c + d*x)**(2/3)/((b*c-a*d)*(a + b*x)**(2/3)) +assert rubi_integrate(1/((a + b*x)**(8/3)*(c + d*x)**(1/3)), x) == -3/5*(c + d*x)**(2/3)/((b*c-a*d)*(a + b*x)**(5/3)) + 9/10*d*(c + d*x)**(2/3)/((b*c-a*d)**2*(a + b*x)**(2/3)) +assert rubi_integrate(1/((a + b*x)**(11/3)*(c + d*x)**(1/3)), x) == -3/8*(c + d*x)**(2/3)/((b*c-a*d)*(a + b*x)**(8/3)) + 9/20*d*(c + d*x)**(2/3)/((b*c-a*d)**2*(a + b*x)**(5/3))-27/40*d**2*(c + d*x)**(2/3)/((b*c-a*d)**3*(a + b*x)**(2/3)) +assert rubi_integrate(1/((a + b*x)**(14/3)*(c + d*x)**(1/3)), x) == -3/11*(c + d*x)**(2/3)/((b*c-a*d)*(a + b*x)**(11/3)) + 27/88*d*(c + d*x)**(2/3)/((b*c-a*d)**2*(a + b*x)**(8/3))-81/220*d**2*(c + d*x)**(2/3)/((b*c-a*d)**3*(a + b*x)**(5/3)) + 243/440*d**3*(c + d*x)**(2/3)/((b*c-a*d)**4*(a + b*x)**(2/3)) +assert rubi_integrate((a + b*x)**(8/3)/(c + d*x)**(1/3), x) == 3/7*(b*c-a*d)**2*(a + b*x)**(2/3)*(c + d*x)**(2/3)/d**3-12/35*(b*c-a*d)*(a + b*x)**(5/3)*(c + d*x)**(2/3)/d**2 + 3/10*(a + b*x)**(8/3)*(c + d*x)**(2/3)/d-3/7*2**(2/3)*(b*c-a*d)**3*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(b**(2/3)*d**(11/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))))-2/7*2**(1/6)*3**(3/4)*(b*c-a*d)**(11/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(b**(2/3)*d**(11/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) + 3/7*3**(1/4)*(b*c-a*d)**(11/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*b**(2/3)*d**(11/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(5/3)/(c + d*x)**(1/3), x) == -15/28*(b*c-a*d)*(a + b*x)**(2/3)*(c + d*x)**(2/3)/d**2 + 3/7*(a + b*x)**(5/3)*(c + d*x)**(2/3)/d + 15/14*(b*c-a*d)**2*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(2**(1/3)*b**(2/3)*d**(8/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))) + 5/7*3**(3/4)*(b*c-a*d)**(8/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(5/6)*b**(2/3)*d**(8/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2))-15/28*3**(1/4)*(b*c-a*d)**(8/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*b**(2/3)*d**(8/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(2/3)/(c + d*x)**(1/3), x) == 3/4*(a + b*x)**(2/3)*(c + d*x)**(2/3)/d-3/2*(b*c-a*d)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(2**(1/3)*b**(2/3)*d**(5/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))))-3**(3/4)*(b*c-a*d)**(5/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(5/6)*b**(2/3)*d**(5/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) + 3/4*3**(1/4)*(b*c-a*d)**(5/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*b**(2/3)*d**(5/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(1/3)*(c + d*x)**(1/3)), x) == 3*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(2**(1/3)*b**(2/3)*d**(2/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))) + 2**(1/6)*3**(3/4)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(b**(2/3)*d**(2/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2))-3/2*3**(1/4)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*b**(2/3)*d**(2/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(4/3)*(c + d*x)**(1/3)), x) == -3*(c + d*x)**(2/3)/((b*c-a*d)*(a + b*x)**(1/3)) + 3*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(2**(1/3)*b**(2/3)*(b*c-a*d)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))) + 2**(1/6)*3**(3/4)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(b**(2/3)*(b*c-a*d)**(1/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2))-3/2*3**(1/4)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*b**(2/3)*(b*c-a*d)**(1/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(7/3)*(c + d*x)**(1/3)), x) == -3/4*(c + d*x)**(2/3)/((b*c-a*d)*(a + b*x)**(4/3)) + 3/2*d*(c + d*x)**(2/3)/((b*c-a*d)**2*(a + b*x)**(1/3))-3/2*d**(4/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(2**(1/3)*b**(2/3)*(b*c-a*d)**2*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))))-3**(3/4)*d**(4/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(5/6)*b**(2/3)*(b*c-a*d)**(4/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) + 3/4*3**(1/4)*d**(4/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*b**(2/3)*(b*c-a*d)**(4/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(10/3)*(c + d*x)**(1/3)), x) == -3/7*(c + d*x)**(2/3)/((b*c-a*d)*(a + b*x)**(7/3)) + 15/28*d*(c + d*x)**(2/3)/((b*c-a*d)**2*(a + b*x)**(4/3))-15/14*d**2*(c + d*x)**(2/3)/((b*c-a*d)**3*(a + b*x)**(1/3)) + 15/14*d**(7/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(2**(1/3)*b**(2/3)*(b*c-a*d)**3*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))) + 5/7*3**(3/4)*d**(7/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(5/6)*b**(2/3)*(b*c-a*d)**(7/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2))-15/28*3**(1/4)*d**(7/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*b**(2/3)*(b*c-a*d)**(7/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(5/3)/(c + d*x)**(2/3), x) == -5/6*(b*c-a*d)*(a + b*x)**(2/3)*(c + d*x)**(1/3)/d**2 + 1/2*(a + b*x)**(5/3)*(c + d*x)**(1/3)/d-5/18*(b*c-a*d)**2*log(c + d*x)/(b**(1/3)*d**(8/3))-5/6*(b*c-a*d)**2*log(-1 + d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)))/(b**(1/3)*d**(8/3))-5/3*(b*c-a*d)**2*arctan(1/sqrt(3) + 2*d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)*sqrt(3)))/(b**(1/3)*d**(8/3)*sqrt(3)) +assert rubi_integrate((a + b*x)**(2/3)/(c + d*x)**(2/3), x) == (a + b*x)**(2/3)*(c + d*x)**(1/3)/d + 1/3*(b*c-a*d)*log(c + d*x)/(b**(1/3)*d**(5/3)) + (b*c-a*d)*log(-1 + d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)))/(b**(1/3)*d**(5/3)) + 2*(b*c-a*d)*arctan(1/sqrt(3) + 2*d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)*sqrt(3)))/(b**(1/3)*d**(5/3)*sqrt(3)) +assert rubi_integrate(1/((a + b*x)**(1/3)*(c + d*x)**(2/3)), x) == -1/2*log(c + d*x)/(b**(1/3)*d**(2/3))-3/2*log(-1 + d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)))/(b**(1/3)*d**(2/3))-arctan(1/sqrt(3) + 2*d**(1/3)*(a + b*x)**(1/3)/(b**(1/3)*(c + d*x)**(1/3)*sqrt(3)))*sqrt(3)/(b**(1/3)*d**(2/3)) +assert rubi_integrate(1/((a + b*x)**(4/3)*(c + d*x)**(2/3)), x) == -3*(c + d*x)**(1/3)/((b*c-a*d)*(a + b*x)**(1/3)) +assert rubi_integrate(1/((a + b*x)**(7/3)*(c + d*x)**(2/3)), x) == -3/4*(c + d*x)**(1/3)/((b*c-a*d)*(a + b*x)**(4/3)) + 9/4*d*(c + d*x)**(1/3)/((b*c-a*d)**2*(a + b*x)**(1/3)) +assert rubi_integrate(1/((a + b*x)**(10/3)*(c + d*x)**(2/3)), x) == -3/7*(c + d*x)**(1/3)/((b*c-a*d)*(a + b*x)**(7/3)) + 9/14*d*(c + d*x)**(1/3)/((b*c-a*d)**2*(a + b*x)**(4/3))-27/14*d**2*(c + d*x)**(1/3)/((b*c-a*d)**3*(a + b*x)**(1/3)) +assert rubi_integrate(1/((a + b*x)**(13/3)*(c + d*x)**(2/3)), x) == -3/10*(c + d*x)**(1/3)/((b*c-a*d)*(a + b*x)**(10/3)) + 27/70*d*(c + d*x)**(1/3)/((b*c-a*d)**2*(a + b*x)**(7/3))-81/140*d**2*(c + d*x)**(1/3)/((b*c-a*d)**3*(a + b*x)**(4/3)) + 243/140*d**3*(c + d*x)**(1/3)/((b*c-a*d)**4*(a + b*x)**(1/3)) +assert rubi_integrate((a + b*x)**(7/3)/(c + d*x)**(2/3), x) == 21/20*(b*c-a*d)**2*(a + b*x)**(1/3)*(c + d*x)**(1/3)/d**3-21/40*(b*c-a*d)*(a + b*x)**(4/3)*(c + d*x)**(1/3)/d**2 + 3/8*(a + b*x)**(7/3)*(c + d*x)**(1/3)/d-7/10*3**(3/4)*(b*c-a*d)**3*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2 + sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(2/3)*b**(1/3)*d**(10/3)*(a + b*x)**(2/3)*(c + d*x)**(2/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(4/3)/(c + d*x)**(2/3), x) == -6/5*(b*c-a*d)*(a + b*x)**(1/3)*(c + d*x)**(1/3)/d**2 + 3/5*(a + b*x)**(4/3)*(c + d*x)**(1/3)/d + 2/5*2**(1/3)*3**(3/4)*(b*c-a*d)**2*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2 + sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(b**(1/3)*d**(7/3)*(a + b*x)**(2/3)*(c + d*x)**(2/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(1/3)/(c + d*x)**(2/3), x) == 3/2*(a + b*x)**(1/3)*(c + d*x)**(1/3)/d-3**(3/4)*(b*c-a*d)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2 + sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(2/3)*b**(1/3)*d**(4/3)*(a + b*x)**(2/3)*(c + d*x)**(2/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(2/3)*(c + d*x)**(2/3)), x) == 2**(1/3)*3**(3/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2 + sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(b**(1/3)*d**(1/3)*(a + b*x)**(2/3)*(c + d*x)**(2/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(5/3)*(c + d*x)**(2/3)), x) == -3/2*(c + d*x)**(1/3)/((b*c-a*d)*(a + b*x)**(2/3))-3**(3/4)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2 + sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(2/3)*b**(1/3)*(b*c-a*d)*(a + b*x)**(2/3)*(c + d*x)**(2/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(8/3)*(c + d*x)**(2/3)), x) == -3/5*(c + d*x)**(1/3)/((b*c-a*d)*(a + b*x)**(5/3)) + 6/5*d*(c + d*x)**(1/3)/((b*c-a*d)**2*(a + b*x)**(2/3)) + 2/5*2**(1/3)*3**(3/4)*d**(5/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2 + sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(b**(1/3)*(b*c-a*d)**2*(a + b*x)**(2/3)*(c + d*x)**(2/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(11/3)*(c + d*x)**(2/3)), x) == -3/8*(c + d*x)**(1/3)/((b*c-a*d)*(a + b*x)**(8/3)) + 21/40*d*(c + d*x)**(1/3)/((b*c-a*d)**2*(a + b*x)**(5/3))-21/20*d**2*(c + d*x)**(1/3)/((b*c-a*d)**3*(a + b*x)**(2/3))-7/10*3**(3/4)*d**(8/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2 + sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(2/3)*b**(1/3)*(b*c-a*d)**3*(a + b*x)**(2/3)*(c + d*x)**(2/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(7/3)/(c + d*x)**(4/3), x) == -3*(a + b*x)**(7/3)/(d*(c + d*x)**(1/3))-14/3*b*(b*c-a*d)*(a + b*x)**(1/3)*(c + d*x)**(2/3)/d**3 + 7/2*b*(a + b*x)**(4/3)*(c + d*x)**(2/3)/d**2-7/9*b**(1/3)*(b*c-a*d)**2*log(a + b*x)/d**(10/3)-7/3*b**(1/3)*(b*c-a*d)**2*log(-1 + b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)))/d**(10/3)-14/3*b**(1/3)*(b*c-a*d)**2*arctan(1/sqrt(3) + 2*b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)*sqrt(3)))/(d**(10/3)*sqrt(3)) +assert rubi_integrate((a + b*x)**(4/3)/(c + d*x)**(4/3), x) == -3*(a + b*x)**(4/3)/(d*(c + d*x)**(1/3)) + 4*b*(a + b*x)**(1/3)*(c + d*x)**(2/3)/d**2 + 2/3*b**(1/3)*(b*c-a*d)*log(a + b*x)/d**(7/3) + 2*b**(1/3)*(b*c-a*d)*log(-1 + b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)))/d**(7/3) + 4*b**(1/3)*(b*c-a*d)*arctan(1/sqrt(3) + 2*b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)*sqrt(3)))/(d**(7/3)*sqrt(3)) +assert rubi_integrate((a + b*x)**(1/3)/(c + d*x)**(4/3), x) == -3*(a + b*x)**(1/3)/(d*(c + d*x)**(1/3))-1/2*b**(1/3)*log(a + b*x)/d**(4/3)-3/2*b**(1/3)*log(-1 + b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)))/d**(4/3)-b**(1/3)*arctan(1/sqrt(3) + 2*b**(1/3)*(c + d*x)**(1/3)/(d**(1/3)*(a + b*x)**(1/3)*sqrt(3)))*sqrt(3)/d**(4/3) +assert rubi_integrate(1/((a + b*x)**(2/3)*(c + d*x)**(4/3)), x) == 3*(a + b*x)**(1/3)/((b*c-a*d)*(c + d*x)**(1/3)) +assert rubi_integrate(1/((a + b*x)**(5/3)*(c + d*x)**(4/3)), x) == (-3/2)/((b*c-a*d)*(a + b*x)**(2/3)*(c + d*x)**(1/3))-9/2*d*(a + b*x)**(1/3)/((b*c-a*d)**2*(c + d*x)**(1/3)) +assert rubi_integrate(1/((a + b*x)**(8/3)*(c + d*x)**(4/3)), x) == (-3/5)/((b*c-a*d)*(a + b*x)**(5/3)*(c + d*x)**(1/3)) + 9/5*d/((b*c-a*d)**2*(a + b*x)**(2/3)*(c + d*x)**(1/3)) + 27/5*d**2*(a + b*x)**(1/3)/((b*c-a*d)**3*(c + d*x)**(1/3)) +assert rubi_integrate(1/((a + b*x)**(11/3)*(c + d*x)**(4/3)), x) == (-3/8)/((b*c-a*d)*(a + b*x)**(8/3)*(c + d*x)**(1/3)) + 27/40*d/((b*c-a*d)**2*(a + b*x)**(5/3)*(c + d*x)**(1/3))-81/40*d**2/((b*c-a*d)**3*(a + b*x)**(2/3)*(c + d*x)**(1/3))-243/40*d**3*(a + b*x)**(1/3)/((b*c-a*d)**4*(c + d*x)**(1/3)) +assert rubi_integrate((a + b*x)**(8/3)/(c + d*x)**(4/3), x) == -3*(a + b*x)**(8/3)/(d*(c + d*x)**(1/3))-30/7*b*(b*c-a*d)*(a + b*x)**(2/3)*(c + d*x)**(2/3)/d**3 + 24/7*b*(a + b*x)**(5/3)*(c + d*x)**(2/3)/d**2 + 30/7*2**(2/3)*b**(1/3)*(b*c-a*d)**2*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(d**(11/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))) + 20/7*2**(1/6)*3**(3/4)*b**(1/3)*(b*c-a*d)**(8/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(d**(11/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2))-15/7*2**(2/3)*3**(1/4)*b**(1/3)*(b*c-a*d)**(8/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(d**(11/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(5/3)/(c + d*x)**(4/3), x) == -3*(a + b*x)**(5/3)/(d*(c + d*x)**(1/3)) + 15/4*b*(a + b*x)**(2/3)*(c + d*x)**(2/3)/d**2-15/2*b**(1/3)*(b*c-a*d)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(2**(1/3)*d**(8/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))))-5*3**(3/4)*b**(1/3)*(b*c-a*d)**(5/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(5/6)*d**(8/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) + 15/4*3**(1/4)*b**(1/3)*(b*c-a*d)**(5/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*d**(8/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(2/3)/(c + d*x)**(4/3), x) == -3*(a + b*x)**(2/3)/(d*(c + d*x)**(1/3)) + 3*2**(2/3)*b**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(d**(5/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))) + 2*2**(1/6)*3**(3/4)*b**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(d**(5/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2))-3*3**(1/4)*b**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*d**(5/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(1/3)*(c + d*x)**(4/3)), x) == 3*(a + b*x)**(2/3)/((b*c-a*d)*(c + d*x)**(1/3))-3*b**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(2**(1/3)*d**(2/3)*(b*c-a*d)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))))-2**(1/6)*3**(3/4)*b**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(d**(2/3)*(b*c-a*d)**(1/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) + 3/2*3**(1/4)*b**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*d**(2/3)*(b*c-a*d)**(1/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(4/3)*(c + d*x)**(4/3)), x) == (-3)/((b*c-a*d)*(a + b*x)**(1/3)*(c + d*x)**(1/3))-6*d*(a + b*x)**(2/3)/((b*c-a*d)**2*(c + d*x)**(1/3)) + 3*2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))) + 2*2**(1/6)*3**(3/4)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/((b*c-a*d)**(4/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2))-3*3**(1/4)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*(b*c-a*d)**(4/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(7/3)*(c + d*x)**(4/3)), x) == (-3/4)/((b*c-a*d)*(a + b*x)**(4/3)*(c + d*x)**(1/3)) + 15/4*d/((b*c-a*d)**2*(a + b*x)**(1/3)*(c + d*x)**(1/3)) + 15/2*d**2*(a + b*x)**(2/3)/((b*c-a*d)**3*(c + d*x)**(1/3))-15/2*b**(1/3)*d**(4/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(2**(1/3)*(b*c-a*d)**3*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))))-5*3**(3/4)*b**(1/3)*d**(4/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticF((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(5/6)*(b*c-a*d)**(7/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) + 15/4*3**(1/4)*b**(1/3)*d**(4/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))*EllipticE((2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1-sqrt(3)))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3))),sqrt(-7-4*sqrt(3)))*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(2-sqrt(3))*sqrt(((b*c-a*d)**(4/3)-2**(2/3)*b**(1/3)*d**(1/3)*(b*c-a*d)**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + 2*2**(1/3)*b**(2/3)*d**(2/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(2/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)/(2**(1/3)*(b*c-a*d)**(7/3)*(a + b*x)**(1/3)*(c + d*x)**(1/3)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))*sqrt((b*c-a*d)**(2/3)*((b*c-a*d)**(2/3) + 2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3))/(2**(2/3)*b**(1/3)*d**(1/3)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/3) + (b*c-a*d)**(2/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((-1 + x)**(1/3)/(1 + x)**(1/3), x) == (-1 + x)**(1/3)*(1 + x)**(2/3) + 1/3*log(-1 + x) + log(-1 + (1 + x)**(1/3)/(-1 + x)**(1/3)) + 2*arctan(1/sqrt(3) + 2*(1 + x)**(1/3)/((-1 + x)**(1/3)*sqrt(3)))/sqrt(3) + +# Integrands of the form (a + b x)**(m/2) (c + d x)**(n/4 + +# n>0 +assert rubi_integrate((a + b*x)**(3/2)*(c + d*x)**(1/4), x) == 4/77*(b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(1/4)/(b*d) + 4/11*(a + b*x)**(5/2)*(c + d*x)**(1/4)/b-8/77*(b*c-a*d)**2*(c + d*x)**(1/4)*sqrt(a + b*x)/(b*d**2) + 16/77*(b*c-a*d)**(13/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(5/4)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(1/2)*(c + d*x)**(1/4), x) == 4/7*(a + b*x)**(3/2)*(c + d*x)**(1/4)/b + 4/21*(b*c-a*d)*(c + d*x)**(1/4)*sqrt(a + b*x)/(b*d)-8/21*(b*c-a*d)**(9/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(5/4)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(1/4)/(a + b*x)**(1/2), x) == 4/3*(c + d*x)**(1/4)*sqrt(a + b*x)/b + 4/3*(b*c-a*d)**(5/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(5/4)*d*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(1/4)/(a + b*x)**(3/2), x) == -2*(c + d*x)**(1/4)/(b*sqrt(a + b*x)) + 2*(b*c-a*d)**(1/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(5/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(1/4)/(a + b*x)**(5/2), x) == -2/3*(c + d*x)**(1/4)/(b*(a + b*x)**(3/2))-1/3*d*(c + d*x)**(1/4)/(b*(b*c-a*d)*sqrt(a + b*x))-1/3*d*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(5/4)*(b*c-a*d)**(3/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(1/4)/(a + b*x)**(7/2), x) == -2/5*(c + d*x)**(1/4)/(b*(a + b*x)**(5/2))-1/15*d*(c + d*x)**(1/4)/(b*(b*c-a*d)*(a + b*x)**(3/2)) + 1/6*d**2*(c + d*x)**(1/4)/(b*(b*c-a*d)**2*sqrt(a + b*x)) + 1/6*d**2*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(5/4)*(b*c-a*d)**(7/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(3/2)*(c + d*x)**(3/4), x)== 4/39*(b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(3/4)/(b*d) + 4/13*(a + b*x)**(5/2)*(c + d*x)**(3/4)/b-8/65*(b*c-a*d)**2*(c + d*x)**(3/4)*sqrt(a + b*x)/(b*d**2) + 16/65*(b*c-a*d)**(15/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d))-16/65*(b*c-a*d)**(15/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(1/2)*(c + d*x)**(3/4), x) == 4/9*(a + b*x)**(3/2)*(c + d*x)**(3/4)/b + 4/15*(b*c-a*d)*(c + d*x)**(3/4)*sqrt(a + b*x)/(b*d)-8/15*(b*c-a*d)**(11/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)) + 8/15*(b*c-a*d)**(11/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(3/4)/(a + b*x)**(1/2), x) == 4/5*(c + d*x)**(3/4)*sqrt(a + b*x)/b + 12/5*(b*c-a*d)**(7/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*d*sqrt(a-b*c/d + b*(c + d*x)/d))-12/5*(b*c-a*d)**(7/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*d*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(3/4)/(a + b*x)**(3/2), x) == -2*(c + d*x)**(3/4)/(b*sqrt(a + b*x)) + 6*(b*c-a*d)**(3/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*sqrt(a-b*c/d + b*(c + d*x)/d))-6*(b*c-a*d)**(3/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(3/4)/(a + b*x)**(5/2), x) == -2/3*(c + d*x)**(3/4)/(b*(a + b*x)**(3/2))-d*(c + d*x)**(3/4)/(b*(b*c-a*d)*sqrt(a + b*x)) + d*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*(b*c-a*d)**(1/4)*sqrt(a-b*c/d + b*(c + d*x)/d))-d*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*(b*c-a*d)**(1/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(3/4)/(a + b*x)**(7/2), x) == -2/5*(c + d*x)**(3/4)/(b*(a + b*x)**(5/2))-1/5*d*(c + d*x)**(3/4)/(b*(b*c-a*d)*(a + b*x)**(3/2)) + 3/10*d**2*(c + d*x)**(3/4)/(b*(b*c-a*d)**2*sqrt(a + b*x))-3/10*d**2*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*(b*c-a*d)**(5/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) + 3/10*d**2*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(7/4)*(b*c-a*d)**(5/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(3/2)*(c + d*x)**(5/4), x) == 4/231*(b*c-a*d)**2*(a + b*x)**(3/2)*(c + d*x)**(1/4)/(b**2*d) + 4/33*(b*c-a*d)*(a + b*x)**(5/2)*(c + d*x)**(1/4)/b**2 + 4/15*(a + b*x)**(5/2)*(c + d*x)**(5/4)/b-8/231*(b*c-a*d)**3*(c + d*x)**(1/4)*sqrt(a + b*x)/(b**2*d**2) + 16/231*(b*c-a*d)**(17/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(9/4)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(1/2)*(c + d*x)**(5/4), x) == 20/77*(b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(1/4)/b**2 + 4/11*(a + b*x)**(3/2)*(c + d*x)**(5/4)/b + 20/231*(b*c-a*d)**2*(c + d*x)**(1/4)*sqrt(a + b*x)/(b**2*d)-40/231*(b*c-a*d)**(13/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(9/4)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(1/2), x) == 20/21*(b*c-a*d)*(c + d*x)**(1/4)*sqrt(a + b*x)/b**2 + 4/7*(c + d*x)**(5/4)*sqrt(a + b*x)/b + 20/21*(b*c-a*d)**(9/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(9/4)*d*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(3/2), x) == -2*(c + d*x)**(5/4)/(b*sqrt(a + b*x)) + 10/3*d*(c + d*x)**(1/4)*sqrt(a + b*x)/b**2 + 10/3*(b*c-a*d)**(5/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(9/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(5/2), x) == -2/3*(c + d*x)**(5/4)/(b*(a + b*x)**(3/2))-5/3*d*(c + d*x)**(1/4)/(b**2*sqrt(a + b*x)) + 5/3*d*(b*c-a*d)**(1/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(9/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(7/2), x) == -1/3*d*(c + d*x)**(1/4)/(b**2*(a + b*x)**(3/2))-2/5*(c + d*x)**(5/4)/(b*(a + b*x)**(5/2))-1/6*d**2*(c + d*x)**(1/4)/(b**2*(b*c-a*d)*sqrt(a + b*x))-1/6*d**2*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(9/4)*(b*c-a*d)**(3/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(9/2), x) == -1/7*d*(c + d*x)**(1/4)/(b**2*(a + b*x)**(5/2))-1/42*d**2*(c + d*x)**(1/4)/(b**2*(b*c-a*d)*(a + b*x)**(3/2))-2/7*(c + d*x)**(5/4)/(b*(a + b*x)**(7/2)) + 5/84*d**3*(c + d*x)**(1/4)/(b**2*(b*c-a*d)**2*sqrt(a + b*x)) + 5/84*d**3*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(9/4)*(b*c-a*d)**(7/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) + +# n<0 +assert rubi_integrate((a + b*x)**(5/2)/(c + d*x)**(1/4), x) == -40/117*(b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(3/4)/d**2 + 4/13*(a + b*x)**(5/2)*(c + d*x)**(3/4)/d + 16/39*(b*c-a*d)**2*(c + d*x)**(3/4)*sqrt(a + b*x)/d**3-32/39*(b*c-a*d)**(15/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*d**4*sqrt(a-b*c/d + b*(c + d*x)/d)) + 32/39*(b*c-a*d)**(15/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*d**4*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(1/4), x) == 4/9*(a + b*x)**(3/2)*(c + d*x)**(3/4)/d-8/15*(b*c-a*d)*(c + d*x)**(3/4)*sqrt(a + b*x)/d**2 + 16/15*(b*c-a*d)**(11/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d))-16/15*(b*c-a*d)**(11/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(1/4), x) == 4/5*(c + d*x)**(3/4)*sqrt(a + b*x)/d-8/5*(b*c-a*d)**(7/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)) + 8/5*(b*c-a*d)**(7/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(1/4)), x) == 4*(b*c-a*d)**(3/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*d*sqrt(a-b*c/d + b*(c + d*x)/d))-4*(b*c-a*d)**(3/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*d*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(1/4)), x) == -2*(c + d*x)**(3/4)/((b*c-a*d)*sqrt(a + b*x)) + 2*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*(b*c-a*d)**(1/4)*sqrt(a-b*c/d + b*(c + d*x)/d))-2*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*(b*c-a*d)**(1/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(1/4)), x) == -2/3*(c + d*x)**(3/4)/((b*c-a*d)*(a + b*x)**(3/2)) + d*(c + d*x)**(3/4)/((b*c-a*d)**2*sqrt(a + b*x))-d*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*(b*c-a*d)**(5/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) + d*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(3/4)*(b*c-a*d)**(5/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(3/4), x) == 4/7*(a + b*x)**(3/2)*(c + d*x)**(1/4)/d-8/7*(b*c-a*d)*(c + d*x)**(1/4)*sqrt(a + b*x)/d**2 + 16/7*(b*c-a*d)**(9/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(1/4)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(3/4), x) == 4/3*(c + d*x)**(1/4)*sqrt(a + b*x)/d-8/3*(b*c-a*d)**(5/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(1/4)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(3/4)), x) == 4*(b*c-a*d)**(1/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(1/4)*d*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(3/4)), x) == -2*(c + d*x)**(1/4)/((b*c-a*d)*sqrt(a + b*x))-2*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(1/4)*(b*c-a*d)**(3/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(3/4)), x) == -2/3*(c + d*x)**(1/4)/((b*c-a*d)*(a + b*x)**(3/2)) + 5/3*d*(c + d*x)**(1/4)/((b*c-a*d)**2*sqrt(a + b*x)) + 5/3*d*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(b**(1/4)*(b*c-a*d)**(7/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(5/2)/(c + d*x)**(5/4), x) == -4*(a + b*x)**(5/2)/(d*(c + d*x)**(1/4)) + 40/9*b*(a + b*x)**(3/2)*(c + d*x)**(3/4)/d**2-16/3*b*(b*c-a*d)*(c + d*x)**(3/4)*sqrt(a + b*x)/d**3 + 32/3*b**(1/4)*(b*c-a*d)**(11/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**4*sqrt(a-b*c/d + b*(c + d*x)/d))-32/3*b**(1/4)*(b*c-a*d)**(11/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**4*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(5/4), x) == -4*(a + b*x)**(3/2)/(d*(c + d*x)**(1/4)) + 24/5*b*(c + d*x)**(3/4)*sqrt(a + b*x)/d**2-48/5*b**(1/4)*(b*c-a*d)**(7/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**3*sqrt(a-b*c/d + b*(c + d*x)/d)) + 48/5*b**(1/4)*(b*c-a*d)**(7/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**3*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(5/4), x) == -4*sqrt(a + b*x)/(d*(c + d*x)**(1/4)) + 8*b**(1/4)*(b*c-a*d)**(3/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**2*sqrt(a-b*c/d + b*(c + d*x)/d))-8*b**(1/4)*(b*c-a*d)**(3/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**2*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(5/4)), x) == 4*sqrt(a + b*x)/((b*c-a*d)*(c + d*x)**(1/4))-4*b**(1/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d*(b*c-a*d)**(1/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) + 4*b**(1/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d*(b*c-a*d)**(1/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(5/4)), x) == (-2)/((b*c-a*d)*(c + d*x)**(1/4)*sqrt(a + b*x))-6*d*sqrt(a + b*x)/((b*c-a*d)**2*(c + d*x)**(1/4)) + 6*b**(1/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**(5/4)*sqrt(a-b*c/d + b*(c + d*x)/d))-6*b**(1/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**(5/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(5/4)), x) == (-2/3)/((b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(1/4)) + 7/3*d/((b*c-a*d)**2*(c + d*x)**(1/4)*sqrt(a + b*x)) + 7*d**2*sqrt(a + b*x)/((b*c-a*d)**3*(c + d*x)**(1/4))-7*b**(1/4)*d*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**(9/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) + 7*b**(1/4)*d*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**(9/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(7/2)/(c + d*x)**(7/4), x) == -4/3*(a + b*x)**(7/2)/(d*(c + d*x)**(3/4))-80/33*b*(b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(1/4)/d**3 + 56/33*b*(a + b*x)**(5/2)*(c + d*x)**(1/4)/d**2 + 160/33*b*(b*c-a*d)**2*(c + d*x)**(1/4)*sqrt(a + b*x)/d**4-320/33*b**(3/4)*(b*c-a*d)**(13/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**5*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(7/4), x) == -4/3*(a + b*x)**(3/2)/(d*(c + d*x)**(3/4)) + 8/3*b*(c + d*x)**(1/4)*sqrt(a + b*x)/d**2-16/3*b**(3/4)*(b*c-a*d)**(5/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**3*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(7/4), x) == -4/3*sqrt(a + b*x)/(d*(c + d*x)**(3/4)) + 8/3*b**(3/4)*(b*c-a*d)**(1/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**2*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(7/4)), x) == 4/3*sqrt(a + b*x)/((b*c-a*d)*(c + d*x)**(3/4)) + 4/3*b**(3/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d*(b*c-a*d)**(3/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(7/4)), x) == (-2)/((b*c-a*d)*(c + d*x)**(3/4)*sqrt(a + b*x))-10/3*d*sqrt(a + b*x)/((b*c-a*d)**2*(c + d*x)**(3/4))-10/3*b**(3/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**(7/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(7/4)), x) == (-2/3)/((b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(3/4)) + 3*d/((b*c-a*d)**2*(c + d*x)**(3/4)*sqrt(a + b*x)) + 5*d**2*sqrt(a + b*x)/((b*c-a*d)**3*(c + d*x)**(3/4)) + 5*b**(3/4)*d*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**(11/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(7/2)/(c + d*x)**(9/4), x) == -4/5*(a + b*x)**(7/2)/(d*(c + d*x)**(5/4))-56/5*b*(a + b*x)**(5/2)/(d**2*(c + d*x)**(1/4)) + 112/9*b**2*(a + b*x)**(3/2)*(c + d*x)**(3/4)/d**3-224/15*b**2*(b*c-a*d)*(c + d*x)**(3/4)*sqrt(a + b*x)/d**4 + 448/15*b**(5/4)*(b*c-a*d)**(11/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**5*sqrt(a-b*c/d + b*(c + d*x)/d))-448/15*b**(5/4)*(b*c-a*d)**(11/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**5*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(5/2)/(c + d*x)**(9/4), x) == -4/5*(a + b*x)**(5/2)/(d*(c + d*x)**(5/4))-8*b*(a + b*x)**(3/2)/(d**2*(c + d*x)**(1/4)) + 48/5*b**2*(c + d*x)**(3/4)*sqrt(a + b*x)/d**3-96/5*b**(5/4)*(b*c-a*d)**(7/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**4*sqrt(a-b*c/d + b*(c + d*x)/d)) + 96/5*b**(5/4)*(b*c-a*d)**(7/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**4*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(9/4), x) == -4/5*(a + b*x)**(3/2)/(d*(c + d*x)**(5/4))-24/5*b*sqrt(a + b*x)/(d**2*(c + d*x)**(1/4)) + 48/5*b**(5/4)*(b*c-a*d)**(3/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**3*sqrt(a-b*c/d + b*(c + d*x)/d))-48/5*b**(5/4)*(b*c-a*d)**(3/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**3*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(9/4), x) == -4/5*sqrt(a + b*x)/(d*(c + d*x)**(5/4)) + 8/5*b*sqrt(a + b*x)/(d*(b*c-a*d)*(c + d*x)**(1/4))-8/5*b**(5/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**2*(b*c-a*d)**(1/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) + 8/5*b**(5/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d**2*(b*c-a*d)**(1/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(9/4)), x) == 4/5*sqrt(a + b*x)/((b*c-a*d)*(c + d*x)**(5/4)) + 12/5*b*sqrt(a + b*x)/((b*c-a*d)**2*(c + d*x)**(1/4))-12/5*b**(5/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d*(b*c-a*d)**(5/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) + 12/5*b**(5/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/(d*(b*c-a*d)**(5/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(9/4)), x) == (-2)/((b*c-a*d)*(c + d*x)**(5/4)*sqrt(a + b*x))-14/5*d*sqrt(a + b*x)/((b*c-a*d)**2*(c + d*x)**(5/4))-42/5*b*d*sqrt(a + b*x)/((b*c-a*d)**3*(c + d*x)**(1/4)) + 42/5*b**(5/4)*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**(9/4)*sqrt(a-b*c/d + b*(c + d*x)/d))-42/5*b**(5/4)*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**(9/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(9/4)), x) == (-2/3)/((b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(5/4)) + 11/3*d/((b*c-a*d)**2*(c + d*x)**(5/4)*sqrt(a + b*x)) + 77/15*d**2*sqrt(a + b*x)/((b*c-a*d)**3*(c + d*x)**(5/4)) + 77/5*b*d**2*sqrt(a + b*x)/((b*c-a*d)**4*(c + d*x)**(1/4))-77/5*b**(5/4)*d*EllipticE(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**(13/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) + 77/5*b**(5/4)*d*EllipticF(b**(1/4)*(c + d*x)**(1/4)/(b*c-a*d)**(1/4),I)*sqrt(1-b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**(13/4)*sqrt(a-b*c/d + b*(c + d*x)/d)) + +# Integrands of the form (a + b x)**(m/4) (c + d x)**(n/4 + +# n>0 +assert rubi_integrate((a + b*x)**(3/4)*(c + d*x)**(5/4), x) == 5/96*(b*c-a*d)**2*(a + b*x)**(3/4)*(c + d*x)**(1/4)/(b**2*d) + 5/24*(b*c-a*d)*(a + b*x)**(7/4)*(c + d*x)**(1/4)/b**2 + 1/3*(a + b*x)**(7/4)*(c + d*x)**(5/4)/b + 5/64*(b*c-a*d)**3*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(9/4)*d**(7/4))-5/64*(b*c-a*d)**3*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(9/4)*d**(7/4)) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(1/4), x) == 5/8*(b*c-a*d)*(a + b*x)**(3/4)*(c + d*x)**(1/4)/b**2 + 1/2*(a + b*x)**(3/4)*(c + d*x)**(5/4)/b-5/16*(b*c-a*d)**2*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(9/4)*d**(3/4)) + 5/16*(b*c-a*d)**2*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(9/4)*d**(3/4)) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(5/4), x) == 5*d*(a + b*x)**(3/4)*(c + d*x)**(1/4)/b**2-4*(c + d*x)**(5/4)/(b*(a + b*x)**(1/4))-5/2*d**(1/4)*(b*c-a*d)*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/b**(9/4) + 5/2*d**(1/4)*(b*c-a*d)*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/b**(9/4) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(9/4), x) == -4*d*(c + d*x)**(1/4)/(b**2*(a + b*x)**(1/4))-4/5*(c + d*x)**(5/4)/(b*(a + b*x)**(5/4))-2*d**(5/4)*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/b**(9/4) + 2*d**(5/4)*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/b**(9/4) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(13/4), x) == -4/9*(c + d*x)**(9/4)/((b*c-a*d)*(a + b*x)**(9/4)) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(17/4), x) == -4/13*(c + d*x)**(9/4)/((b*c-a*d)*(a + b*x)**(13/4)) + 16/117*d*(c + d*x)**(9/4)/((b*c-a*d)**2*(a + b*x)**(9/4)) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(21/4), x) == -4/17*(c + d*x)**(9/4)/((b*c-a*d)*(a + b*x)**(17/4)) + 32/221*d*(c + d*x)**(9/4)/((b*c-a*d)**2*(a + b*x)**(13/4))-128/1989*d**2*(c + d*x)**(9/4)/((b*c-a*d)**3*(a + b*x)**(9/4)) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(25/4), x) == -4/21*(c + d*x)**(9/4)/((b*c-a*d)*(a + b*x)**(21/4)) + 16/119*d*(c + d*x)**(9/4)/((b*c-a*d)**2*(a + b*x)**(17/4))-128/1547*d**2*(c + d*x)**(9/4)/((b*c-a*d)**3*(a + b*x)**(13/4)) + 512/13923*d**3*(c + d*x)**(9/4)/((b*c-a*d)**4*(a + b*x)**(9/4)) +assert rubi_integrate((a + b*x)**(5/4)*(c + d*x)**(5/4), x) == -5/84*(b*c-a*d)**3*(a + b*x)**(1/4)*(c + d*x)**(1/4)/(b**2*d**2) + 1/42*(b*c-a*d)**2*(a + b*x)**(5/4)*(c + d*x)**(1/4)/(b**2*d) + 1/7*(b*c-a*d)*(a + b*x)**(9/4)*(c + d*x)**(1/4)/b**2 + 2/7*(a + b*x)**(9/4)*(c + d*x)**(5/4)/b + 5/168*(b*c-a*d)**(9/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(9/4)*d**(9/4)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((a + b*x)**(1/4)*(c + d*x)**(5/4), x) == 1/6*(b*c-a*d)**2*(a + b*x)**(1/4)*(c + d*x)**(1/4)/(b**2*d) + 1/3*(b*c-a*d)*(a + b*x)**(5/4)*(c + d*x)**(1/4)/b**2 + 2/5*(a + b*x)**(5/4)*(c + d*x)**(5/4)/b-1/12*(b*c-a*d)**(7/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(9/4)*d**(5/4)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(3/4), x) == 5/3*(b*c-a*d)*(a + b*x)**(1/4)*(c + d*x)**(1/4)/b**2 + 2/3*(a + b*x)**(1/4)*(c + d*x)**(5/4)/b + 5/6*(b*c-a*d)**(5/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(9/4)*d**(1/4)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(7/4), x) == 10/3*d*(a + b*x)**(1/4)*(c + d*x)**(1/4)/b**2-4/3*(c + d*x)**(5/4)/(b*(a + b*x)**(3/4)) + 5/3*d**(3/4)*(b*c-a*d)**(3/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(9/4)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(11/4), x) == -20/21*d*(c + d*x)**(1/4)/(b**2*(a + b*x)**(3/4))-4/7*(c + d*x)**(5/4)/(b*(a + b*x)**(7/4)) + 5/21*d**(7/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt(b*c-a*d)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(9/4)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(15/4), x) == -20/77*d*(c + d*x)**(1/4)/(b**2*(a + b*x)**(7/4))-20/231*d**2*(c + d*x)**(1/4)/(b**2*(b*c-a*d)*(a + b*x)**(3/4))-4/11*(c + d*x)**(5/4)/(b*(a + b*x)**(11/4))-10/231*d**(11/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(9/4)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt(b*c-a*d)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((c + d*x)**(5/4)/(a + b*x)**(19/4), x) == -4/33*d*(c + d*x)**(1/4)/(b**2*(a + b*x)**(11/4))-4/231*d**2*(c + d*x)**(1/4)/(b**2*(b*c-a*d)*(a + b*x)**(7/4)) + 8/231*d**3*(c + d*x)**(1/4)/(b**2*(b*c-a*d)**2*(a + b*x)**(3/4))-4/15*(c + d*x)**(5/4)/(b*(a + b*x)**(15/4)) + 4/231*d**(15/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(9/4)*(b*c-a*d)**(3/2)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) + +# n<0 +assert rubi_integrate((a + b*x)**(5/4)/(c + d*x)**(1/4), x) == -5/8*(b*c-a*d)*(a + b*x)**(1/4)*(c + d*x)**(3/4)/d**2 + 1/2*(a + b*x)**(5/4)*(c + d*x)**(3/4)/d + 5/16*(b*c-a*d)**2*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(3/4)*d**(9/4)) + 5/16*(b*c-a*d)**2*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(3/4)*d**(9/4)) +assert rubi_integrate((a + b*x)**(1/4)/(c + d*x)**(1/4), x) == (a + b*x)**(1/4)*(c + d*x)**(3/4)/d-1/2*(b*c-a*d)*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(3/4)*d**(5/4))-1/2*(b*c-a*d)*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(3/4)*d**(5/4)) +assert rubi_integrate(1/((a + b*x)**(3/4)*(c + d*x)**(1/4)), x) == 2*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(3/4)*d**(1/4)) + 2*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(3/4)*d**(1/4)) +assert rubi_integrate(1/((a + b*x)**(7/4)*(c + d*x)**(1/4)), x) == -4/3*(c + d*x)**(3/4)/((b*c-a*d)*(a + b*x)**(3/4)) +assert rubi_integrate(1/((a + b*x)**(11/4)*(c + d*x)**(1/4)), x) == -4/7*(c + d*x)**(3/4)/((b*c-a*d)*(a + b*x)**(7/4)) + 16/21*d*(c + d*x)**(3/4)/((b*c-a*d)**2*(a + b*x)**(3/4)) +assert rubi_integrate(1/((a + b*x)**(15/4)*(c + d*x)**(1/4)), x) == -4/11*(c + d*x)**(3/4)/((b*c-a*d)*(a + b*x)**(11/4)) + 32/77*d*(c + d*x)**(3/4)/((b*c-a*d)**2*(a + b*x)**(7/4))-128/231*d**2*(c + d*x)**(3/4)/((b*c-a*d)**3*(a + b*x)**(3/4)) +assert rubi_integrate(1/((a + b*x)**(19/4)*(c + d*x)**(1/4)), x) == -4/15*(c + d*x)**(3/4)/((b*c-a*d)*(a + b*x)**(15/4)) + 16/55*d*(c + d*x)**(3/4)/((b*c-a*d)**2*(a + b*x)**(11/4))-128/385*d**2*(c + d*x)**(3/4)/((b*c-a*d)**3*(a + b*x)**(7/4)) + 512/1155*d**3*(c + d*x)**(3/4)/((b*c-a*d)**4*(a + b*x)**(3/4)) +assert rubi_integrate((a + b*x)**(7/4)/(c + d*x)**(1/4), x) == -7/15*(b*c-a*d)*(a + b*x)**(3/4)*(c + d*x)**(3/4)/d**2 + 2/5*(a + b*x)**(7/4)*(c + d*x)**(3/4)/d + 7/10*(b*c-a*d)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(d**(5/2)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(b)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d)))-7/10*(b*c-a*d)**(7/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticE(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(3/4)*d**(11/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) + 7/20*(b*c-a*d)**(7/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(3/4)*d**(11/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((a + b*x)**(3/4)/(c + d*x)**(1/4), x) == 2/3*(a + b*x)**(3/4)*(c + d*x)**(3/4)/d-sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(d**(3/2)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(b)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))) + (b*c-a*d)**(5/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticE(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(3/4)*d**(7/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2)))-1/2*(b*c-a*d)**(5/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(3/4)*d**(7/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate(1/((a + b*x)**(1/4)*(c + d*x)**(1/4)), x) == 2*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(b)*sqrt(d)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))) + (b*c-a*d)**(3/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(3/4)*d**(3/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2)))-(b*c-a*d)**(3/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticE(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(3/4)*d**(3/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate(1/((a + b*x)**(5/4)*(c + d*x)**(1/4)), x) == -4*(c + d*x)**(3/4)/((b*c-a*d)*(a + b*x)**(1/4)) + 4*sqrt(d)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(b)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d)))-2*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticE(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt(b*c-a*d)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(3/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) + d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt(b*c-a*d)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(3/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate(1/((a + b*x)**(9/4)*(c + d*x)**(1/4)), x) == -4/5*(c + d*x)**(3/4)/((b*c-a*d)*(a + b*x)**(5/4)) + 8/5*d*(c + d*x)**(3/4)/((b*c-a*d)**2*(a + b*x)**(1/4))-8/5*d**(3/2)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**3*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(b)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))) + 4/5*d**(5/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticE(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(3/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(b*c-a*d)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2)))-2/5*d**(5/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(3/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(b*c-a*d)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((a + b*x)**(7/4)/(c + d*x)**(3/4), x) == -7/8*(b*c-a*d)*(a + b*x)**(3/4)*(c + d*x)**(1/4)/d**2 + 1/2*(a + b*x)**(7/4)*(c + d*x)**(1/4)/d-21/16*(b*c-a*d)**2*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(1/4)*d**(11/4)) + 21/16*(b*c-a*d)**2*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(1/4)*d**(11/4)) +assert rubi_integrate((a + b*x)**(3/4)/(c + d*x)**(3/4), x) == (a + b*x)**(3/4)*(c + d*x)**(1/4)/d + 3/2*(b*c-a*d)*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(1/4)*d**(7/4))-3/2*(b*c-a*d)*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(1/4)*d**(7/4)) +assert rubi_integrate(1/((a + b*x)**(1/4)*(c + d*x)**(3/4)), x) == -2*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(1/4)*d**(3/4)) + 2*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/(b**(1/4)*d**(3/4)) +assert rubi_integrate(1/((a + b*x)**(5/4)*(c + d*x)**(3/4)), x) == -4*(c + d*x)**(1/4)/((b*c-a*d)*(a + b*x)**(1/4)) +assert rubi_integrate(1/((a + b*x)**(9/4)*(c + d*x)**(3/4)), x) == -4/5*(c + d*x)**(1/4)/((b*c-a*d)*(a + b*x)**(5/4)) + 16/5*d*(c + d*x)**(1/4)/((b*c-a*d)**2*(a + b*x)**(1/4)) +assert rubi_integrate(1/((a + b*x)**(13/4)*(c + d*x)**(3/4)), x) == -4/9*(c + d*x)**(1/4)/((b*c-a*d)*(a + b*x)**(9/4)) + 32/45*d*(c + d*x)**(1/4)/((b*c-a*d)**2*(a + b*x)**(5/4))-128/45*d**2*(c + d*x)**(1/4)/((b*c-a*d)**3*(a + b*x)**(1/4)) +assert rubi_integrate(1/((a + b*x)**(17/4)*(c + d*x)**(3/4)), x) == -4/13*(c + d*x)**(1/4)/((b*c-a*d)*(a + b*x)**(13/4)) + 16/39*d*(c + d*x)**(1/4)/((b*c-a*d)**2*(a + b*x)**(9/4))-128/195*d**2*(c + d*x)**(1/4)/((b*c-a*d)**3*(a + b*x)**(5/4)) + 512/195*d**3*(c + d*x)**(1/4)/((b*c-a*d)**4*(a + b*x)**(1/4)) +assert rubi_integrate((a + b*x)**(5/4)/(c + d*x)**(3/4), x) == -5/3*(b*c-a*d)*(a + b*x)**(1/4)*(c + d*x)**(1/4)/d**2 + 2/3*(a + b*x)**(5/4)*(c + d*x)**(1/4)/d + 5/6*(b*c-a*d)**(5/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(1/4)*d**(9/4)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((a + b*x)**(1/4)/(c + d*x)**(3/4), x) == 2*(a + b*x)**(1/4)*(c + d*x)**(1/4)/d-(b*c-a*d)**(3/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(1/4)*d**(5/4)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate(1/((a + b*x)**(3/4)*(c + d*x)**(3/4)), x) == (a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt(b*c-a*d)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(1/4)*d**(1/4)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate(1/((a + b*x)**(7/4)*(c + d*x)**(3/4)), x) == -4/3*(c + d*x)**(1/4)/((b*c-a*d)*(a + b*x)**(3/4))-2/3*d**(3/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(1/4)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt(b*c-a*d)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate(1/((a + b*x)**(11/4)*(c + d*x)**(3/4)), x) == -4/7*(c + d*x)**(1/4)/((b*c-a*d)*(a + b*x)**(7/4)) + 8/7*d*(c + d*x)**(1/4)/((b*c-a*d)**2*(a + b*x)**(3/4)) + 4/7*d**(7/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(3/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(b**(1/4)*(b*c-a*d)**(3/2)*(a + b*x)**(3/4)*(c + d*x)**(3/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((a + b*x)**(5/4)/(c + d*x)**(5/4), x) == -4*(a + b*x)**(5/4)/(d*(c + d*x)**(1/4)) + 5*b*(a + b*x)**(1/4)*(c + d*x)**(3/4)/d**2-5/2*b**(1/4)*(b*c-a*d)*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/d**(9/4)-5/2*b**(1/4)*(b*c-a*d)*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/d**(9/4) +assert rubi_integrate((a + b*x)**(1/4)/(c + d*x)**(5/4), x) == -4*(a + b*x)**(1/4)/(d*(c + d*x)**(1/4)) + 2*b**(1/4)*arctan(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/d**(5/4) + 2*b**(1/4)*arctanh(d**(1/4)*(a + b*x)**(1/4)/(b**(1/4)*(c + d*x)**(1/4)))/d**(5/4) +assert rubi_integrate(1/((a + b*x)**(3/4)*(c + d*x)**(5/4)), x) == 4*(a + b*x)**(1/4)/((b*c-a*d)*(c + d*x)**(1/4)) +assert rubi_integrate(1/((a + b*x)**(7/4)*(c + d*x)**(5/4)), x) == (-4/3)/((b*c-a*d)*(a + b*x)**(3/4)*(c + d*x)**(1/4))-16/3*d*(a + b*x)**(1/4)/((b*c-a*d)**2*(c + d*x)**(1/4)) +assert rubi_integrate(1/((a + b*x)**(11/4)*(c + d*x)**(5/4)), x) == (-4/7)/((b*c-a*d)*(a + b*x)**(7/4)*(c + d*x)**(1/4)) + 32/21*d/((b*c-a*d)**2*(a + b*x)**(3/4)*(c + d*x)**(1/4)) + 128/21*d**2*(a + b*x)**(1/4)/((b*c-a*d)**3*(c + d*x)**(1/4)) +assert rubi_integrate(1/((a + b*x)**(15/4)*(c + d*x)**(5/4)), x) == (-4/11)/((b*c-a*d)*(a + b*x)**(11/4)*(c + d*x)**(1/4)) + 48/77*d/((b*c-a*d)**2*(a + b*x)**(7/4)*(c + d*x)**(1/4))-128/77*d**2/((b*c-a*d)**3*(a + b*x)**(3/4)*(c + d*x)**(1/4))-512/77*d**3*(a + b*x)**(1/4)/((b*c-a*d)**4*(c + d*x)**(1/4)) +assert rubi_integrate((a + b*x)**(11/4)/(c + d*x)**(5/4), x) == -4*(a + b*x)**(11/4)/(d*(c + d*x)**(1/4))-77/15*b*(b*c-a*d)*(a + b*x)**(3/4)*(c + d*x)**(3/4)/d**3 + 22/5*b*(a + b*x)**(7/4)*(c + d*x)**(3/4)/d**2 + 77/10*(b*c-a*d)*sqrt(b)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(d**(7/2)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d)))-77/10*b**(1/4)*(b*c-a*d)**(7/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticE(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(d**(15/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) + 77/20*b**(1/4)*(b*c-a*d)**(7/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(d**(15/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((a + b*x)**(7/4)/(c + d*x)**(5/4), x) == -4*(a + b*x)**(7/4)/(d*(c + d*x)**(1/4)) + 14/3*b*(a + b*x)**(3/4)*(c + d*x)**(3/4)/d**2-7*sqrt(b)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(d**(5/2)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))) + 7*b**(1/4)*(b*c-a*d)**(5/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticE(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(d**(11/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2)))-7/2*b**(1/4)*(b*c-a*d)**(5/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(d**(11/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate((a + b*x)**(3/4)/(c + d*x)**(5/4), x) == -4*(a + b*x)**(3/4)/(d*(c + d*x)**(1/4)) + 6*sqrt(b)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/(d**(3/2)*(b*c-a*d)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))) + 3*b**(1/4)*(b*c-a*d)**(3/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(d**(7/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2)))-3*b**(1/4)*(b*c-a*d)**(3/2)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticE(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(d**(7/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate(1/((a + b*x)**(1/4)*(c + d*x)**(5/4)), x) == 4*(a + b*x)**(3/4)/((b*c-a*d)*(c + d*x)**(1/4))-4*sqrt(b)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(d)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))) + 2*b**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticE(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt(b*c-a*d)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(d**(3/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2)))-b**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt(b*c-a*d)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/(d**(3/4)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate(1/((a + b*x)**(5/4)*(c + d*x)**(5/4)), x) == (-4)/((b*c-a*d)*(a + b*x)**(1/4)*(c + d*x)**(1/4))-8*d*(a + b*x)**(3/4)/((b*c-a*d)**2*(c + d*x)**(1/4)) + 8*sqrt(b)*sqrt(d)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**3*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d)))-4*b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticE(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/((a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(b*c-a*d)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) + 2*b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/((a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt(b*c-a*d)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate(1/((a + b*x)**(9/4)*(c + d*x)**(5/4)), x) == (-4/5)/((b*c-a*d)*(a + b*x)**(5/4)*(c + d*x)**(1/4)) + 24/5*d/((b*c-a*d)**2*(a + b*x)**(1/4)*(c + d*x)**(1/4)) + 48/5*d**2*(a + b*x)**(3/4)/((b*c-a*d)**3*(c + d*x)**(1/4))-48/5*d**(3/2)*sqrt(b)*sqrt((b*c + a*d + 2*b*d*x)**2)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**4*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))) + 24/5*b**(1/4)*d**(5/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticE(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/((b*c-a*d)**(3/2)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2)))-12/5*b**(1/4)*d**(5/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))**2)/cos(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d)))*EllipticF(sin(2*arctan(b**(1/4)*d**(1/4)*(a*c + (b*c + a*d)*x + b*d*x**2)**(1/4)*sqrt(2)/sqrt(b*c-a*d))),sqrt(1/2))*sqrt(2)*sqrt((b*c + a*d + 2*b*d*x)**2)*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))*sqrt(((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))/((b*c-a*d)**2*(1 + 2*sqrt(b)*sqrt(d)*sqrt(a*c + (b*c + a*d)*x + b*d*x**2)/(b*c-a*d))**2))/((b*c-a*d)**(3/2)*(a + b*x)**(1/4)*(c + d*x)**(1/4)*(b*c + a*d + 2*b*d*x)*sqrt((b*c-a*d)**2 + 4*b*d*(a*c + (b*c + a*d)*x + b*d*x**2))) +assert rubi_integrate(1/((1-a*x)**(1/4)*(1 + b*x)**(3/4)), x) == -log(-a**(1/4)*b**(1/4)*(1-a*x)**(1/4)*sqrt(2)/(1 + b*x)**(1/4) + sqrt(a) + sqrt(b)*sqrt(1-a*x)/sqrt(1 + b*x))/(a**(1/4)*b**(3/4)*sqrt(2)) + log(a**(1/4)*b**(1/4)*(1-a*x)**(1/4)*sqrt(2)/(1 + b*x)**(1/4) + sqrt(a) + sqrt(b)*sqrt(1-a*x)/sqrt(1 + b*x))/(a**(1/4)*b**(3/4)*sqrt(2)) + arctan(1-b**(1/4)*(1-a*x)**(1/4)*sqrt(2)/(a**(1/4)*(1 + b*x)**(1/4)))*sqrt(2)/(a**(1/4)*b**(3/4))-arctan(1 + b**(1/4)*(1-a*x)**(1/4)*sqrt(2)/(a**(1/4)*(1 + b*x)**(1/4)))*sqrt(2)/(a**(1/4)*b**(3/4)) +assert rubi_integrate(1/((1-a*x)**(1/4)*(1 + a*x)**(3/4)), x) == -log(1-(1-a*x)**(1/4)*sqrt(2)/(1 + a*x)**(1/4) + sqrt(1-a*x)/sqrt(1 + a*x))/(a*sqrt(2)) + log(1 + (1-a*x)**(1/4)*sqrt(2)/(1 + a*x)**(1/4) + sqrt(1-a*x)/sqrt(1 + a*x))/(a*sqrt(2)) + arctan(1-(1-a*x)**(1/4)*sqrt(2)/(1 + a*x)**(1/4))*sqrt(2)/a-arctan(1 + (1-a*x)**(1/4)*sqrt(2)/(1 + a*x)**(1/4))*sqrt(2)/a + +# Integrands of the form (a + b x)**(m/2) (c + d x)**(n/5 +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(1/5), x) == 2/5*(a + b*x)**(5/2)*(b*(c + d*x)/(b*c-a*d))**(1/5)*hypergeom([1/5,5/2],[7/2],-d*(a + b*x)/(b*c-a*d))/(b*(c + d*x)**(1/5)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(1/5), x) == 2/3*(a + b*x)**(3/2)*(b*(c + d*x)/(b*c-a*d))**(1/5)*hypergeom([1/5,3/2],[5/2],-d*(a + b*x)/(b*c-a*d))/(b*(c + d*x)**(1/5)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(1/5)), x) == 2*(b*(c + d*x)/(b*c-a*d))**(1/5)*hypergeom([1/5,1/2],[3/2],-d*(a + b*x)/(b*c-a*d))*sqrt(a + b*x)/(b*(c + d*x)**(1/5)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(1/5)), x) == -2*(b*(c + d*x)/(b*c-a*d))**(1/5)*hypergeom([-1/2,1/5],[1/2],-d*(a + b*x)/(b*c-a*d))/(b*(c + d*x)**(1/5)*sqrt(a + b*x)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(1/5)), x) == -2/3*(b*(c + d*x)/(b*c-a*d))**(1/5)*hypergeom([-3/2,1/5],[-1/2],-d*(a + b*x)/(b*c-a*d))/(b*(a + b*x)**(3/2)*(c + d*x)**(1/5)) + +# Integrands of the form (a + b x)**(m/2) (c + d x)**(n/6 + +# n>0 +assert rubi_integrate((a + b*x)**(5/2)*(c + d*x)**(1/6), x) == -9/352*(b*c-a*d)**2*(a + b*x)**(3/2)*(c + d*x)**(1/6)/(b*d**2) + 3/176*(b*c-a*d)*(a + b*x)**(5/2)*(c + d*x)**(1/6)/(b*d) + 3/11*(a + b*x)**(7/2)*(c + d*x)**(1/6)/b + 81/1408*(b*c-a*d)**3*(c + d*x)**(1/6)*sqrt(a + b*x)/(b*d**3)-81/2816*3**(3/4)*(b*c-a*d)**(11/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b*d**4*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(3/2)*(c + d*x)**(1/6), x) == 3/80*(b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(1/6)/(b*d) + 3/8*(a + b*x)**(5/2)*(c + d*x)**(1/6)/b-27/320*(b*c-a*d)**2*(c + d*x)**(1/6)*sqrt(a + b*x)/(b*d**2) + 27/640*3**(3/4)*(b*c-a*d)**(8/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(1/2)*(c + d*x)**(1/6), x) == 3/5*(a + b*x)**(3/2)*(c + d*x)**(1/6)/b + 3/20*(b*c-a*d)*(c + d*x)**(1/6)*sqrt(a + b*x)/(b*d)-3/40*3**(3/4)*(b*c-a*d)**(5/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(1/6)/(a + b*x)**(1/2), x) == 3/2*(c + d*x)**(1/6)*sqrt(a + b*x)/b + 1/4*3**(3/4)*(b*c-a*d)**(2/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b*d*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(1/6)/(a + b*x)**(3/2), x) == -2*(c + d*x)**(1/6)/(b*sqrt(a + b*x)) + (c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(1/4)*b*(b*c-a*d)**(1/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(1/6)/(a + b*x)**(5/2), x) == -2/3*(c + d*x)**(1/6)/(b*(a + b*x)**(3/2))-2/9*d*(c + d*x)**(1/6)/(b*(b*c-a*d)*sqrt(a + b*x))-2/9*d*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(1/4)*b*(b*c-a*d)**(4/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(3/2)*(c + d*x)**(5/6), x) == 3/28*(b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(5/6)/(b*d) + 3/10*(a + b*x)**(5/2)*(c + d*x)**(5/6)/b-27/224*(b*c-a*d)**2*(c + d*x)**(5/6)*sqrt(a + b*x)/(b*d**2)-81/448*(b*c-a*d)**3*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(5/3)*d**2*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))-81/448*3**(1/4)*(b*c-a*d)**(10/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(5/3)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2))-27/896*3**(3/4)*(b*c-a*d)**(10/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(5/3)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(1/2)*(c + d*x)**(5/6), x) == 3/7*(a + b*x)**(3/2)*(c + d*x)**(5/6)/b + 15/56*(b*c-a*d)*(c + d*x)**(5/6)*sqrt(a + b*x)/(b*d) + 45/112*(b*c-a*d)**2*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(5/3)*d*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))) + 45/112*3**(1/4)*(b*c-a*d)**(7/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(5/3)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) + 15/224*3**(3/4)*(b*c-a*d)**(7/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(5/3)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(5/6)/(a + b*x)**(1/2), x) == 3/4*(c + d*x)**(5/6)*sqrt(a + b*x)/b-15/8*(b*c-a*d)*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(5/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))-15/8*3**(1/4)*(b*c-a*d)**(4/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(5/3)*d*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2))-5/16*3**(3/4)*(b*c-a*d)**(4/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(5/3)*d*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(5/6)/(a + b*x)**(3/2), x) == -2*(c + d*x)**(5/6)/(b*sqrt(a + b*x))-5*d*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(5/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))-5*3**(1/4)*(b*c-a*d)**(1/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(5/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2))-5/2*(b*c-a*d)**(1/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(1/4)*b**(5/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(5/6)/(a + b*x)**(5/2), x) == -2/3*(c + d*x)**(5/6)/(b*(a + b*x)**(3/2))-10/9*d*(c + d*x)**(5/6)/(b*(b*c-a*d)*sqrt(a + b*x))-10/9*d**2*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(5/3)*(b*c-a*d)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))-10/3*d*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(3/4)*b**(5/3)*(b*c-a*d)**(2/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2))-5/9*d*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(1/4)*b**(5/3)*(b*c-a*d)**(2/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((c + d*x)**(5/6)/(a + b*x)**(7/2), x) == -2/5*(c + d*x)**(5/6)/(b*(a + b*x)**(5/2))-2/9*d*(c + d*x)**(5/6)/(b*(b*c-a*d)*(a + b*x)**(3/2)) + 8/27*d**2*(c + d*x)**(5/6)/(b*(b*c-a*d)**2*sqrt(a + b*x)) + 8/27*d**3*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(5/3)*(b*c-a*d)**2*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))) + 8/9*d**2*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(3/4)*b**(5/3)*(b*c-a*d)**(5/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) + 4/27*d**2*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(1/4)*b**(5/3)*(b*c-a*d)**(5/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) + +# n<0 +assert rubi_integrate((a + b*x)**(5/2)/(c + d*x)**(1/6), x) == -9/28*(b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(5/6)/d**2 + 3/10*(a + b*x)**(5/2)*(c + d*x)**(5/6)/d + 81/224*(b*c-a*d)**2*(c + d*x)**(5/6)*sqrt(a + b*x)/d**3 + 243/448*(b*c-a*d)**3*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(2/3)*d**3*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))) + 243/448*3**(1/4)*(b*c-a*d)**(10/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(2/3)*d**4*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) + 81/896*3**(3/4)*(b*c-a*d)**(10/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(2/3)*d**4*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(1/6), x) == 3/7*(a + b*x)**(3/2)*(c + d*x)**(5/6)/d-27/56*(b*c-a*d)*(c + d*x)**(5/6)*sqrt(a + b*x)/d**2-81/112*(b*c-a*d)**2*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(2/3)*d**2*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))-81/112*3**(1/4)*(b*c-a*d)**(7/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(2/3)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2))-27/224*3**(3/4)*(b*c-a*d)**(7/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(2/3)*d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(1/6), x) == 3/4*(c + d*x)**(5/6)*sqrt(a + b*x)/d + 9/8*(b*c-a*d)*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(2/3)*d*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))) + 9/8*3**(1/4)*(b*c-a*d)**(4/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(2/3)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) + 3/16*3**(3/4)*(b*c-a*d)**(4/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(2/3)*d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(1/6)), x) == -3*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(2/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))-3*3**(1/4)*(b*c-a*d)**(1/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(2/3)*d*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2))-1/2*3**(3/4)*(b*c-a*d)**(1/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(2/3)*d*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(1/6)), x) == -2*(c + d*x)**(5/6)/((b*c-a*d)*sqrt(a + b*x))-2*d*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(2/3)*(b*c-a*d)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))-2*3**(1/4)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(b**(2/3)*(b*c-a*d)**(2/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2))-(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(1/4)*b**(2/3)*(b*c-a*d)**(2/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(1/6)), x) == -2/3*(c + d*x)**(5/6)/((b*c-a*d)*(a + b*x)**(3/2)) + 8/9*d*(c + d*x)**(5/6)/((b*c-a*d)**2*sqrt(a + b*x)) + 8/9*d**2*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(b**(2/3)*(b*c-a*d)**2*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))) + 8/3*d*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(3/4)*b**(2/3)*(b*c-a*d)**(5/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) + 4/9*d*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(1/4)*b**(2/3)*(b*c-a*d)**(5/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(5/2)/(c + d*x)**(5/6), x) == -9/16*(b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(1/6)/d**2 + 3/8*(a + b*x)**(5/2)*(c + d*x)**(1/6)/d + 81/64*(b*c-a*d)**2*(c + d*x)**(1/6)*sqrt(a + b*x)/d**3-81/128*3**(3/4)*(b*c-a*d)**(8/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d**4*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(5/6), x) == 3/5*(a + b*x)**(3/2)*(c + d*x)**(1/6)/d-27/20*(b*c-a*d)*(c + d*x)**(1/6)*sqrt(a + b*x)/d**2 + 27/40*3**(3/4)*(b*c-a*d)**(5/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(5/6), x) == 3/2*(c + d*x)**(1/6)*sqrt(a + b*x)/d-3/4*3**(3/4)*(b*c-a*d)**(2/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(5/6)), x) == 3**(3/4)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d*(b*c-a*d)**(1/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(5/6)), x) == -2*(c + d*x)**(1/6)/((b*c-a*d)*sqrt(a + b*x))-2*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(1/4)*(b*c-a*d)**(4/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(5/6)), x) == -2/3*(c + d*x)**(1/6)/((b*c-a*d)*(a + b*x)**(3/2)) + 16/9*d*(c + d*x)**(1/6)/((b*c-a*d)**2*sqrt(a + b*x)) + 16/9*d*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(1/4)*(b*c-a*d)**(7/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(5/2)/(c + d*x)**(7/6), x) == -6*(a + b*x)**(5/2)/(d*(c + d*x)**(1/6)) + 45/7*b*(a + b*x)**(3/2)*(c + d*x)**(5/6)/d**2-405/56*b*(b*c-a*d)*(c + d*x)**(5/6)*sqrt(a + b*x)/d**3-1215/112*b**(1/3)*(b*c-a*d)**2*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(d**3*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))-1215/112*3**(1/4)*b**(1/3)*(b*c-a*d)**(7/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d**4*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2))-405/224*3**(3/4)*b**(1/3)*(b*c-a*d)**(7/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d**4*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(3/2)/(c + d*x)**(7/6), x) == -6*(a + b*x)**(3/2)/(d*(c + d*x)**(1/6)) + 27/4*b*(c + d*x)**(5/6)*sqrt(a + b*x)/d**2 + 81/8*b**(1/3)*(b*c-a*d)*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(d**2*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))) + 81/8*3**(1/4)*b**(1/3)*(b*c-a*d)**(4/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) + 27/16*3**(3/4)*b**(1/3)*(b*c-a*d)**(4/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d**3*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate((a + b*x)**(1/2)/(c + d*x)**(7/6), x) == -6*sqrt(a + b*x)/(d*(c + d*x)**(1/6))-9*b**(1/3)*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/(d*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))-9*3**(1/4)*b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2))-3/2*3**(3/4)*b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d**2*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(1/2)*(c + d*x)**(7/6)), x) == 6*sqrt(a + b*x)/((b*c-a*d)*(c + d*x)**(1/6)) + 6*b**(1/3)*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/((b*c-a*d)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))) + 6*3**(1/4)*b**(1/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d*(b*c-a*d)**(2/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) + 3**(3/4)*b**(1/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(d*(b*c-a*d)**(2/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(3/2)*(c + d*x)**(7/6)), x) == (-2)/((b*c-a*d)*(c + d*x)**(1/6)*sqrt(a + b*x))-8*d*sqrt(a + b*x)/((b*c-a*d)**2*(c + d*x)**(1/6))-8*b**(1/3)*d*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/((b*c-a*d)**2*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))-8*3**(1/4)*b**(1/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/((b*c-a*d)**(5/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2))-4*b**(1/3)*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(1/4)*(b*c-a*d)**(5/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) +assert rubi_integrate(1/((a + b*x)**(5/2)*(c + d*x)**(7/6)), x) == (-2/3)/((b*c-a*d)*(a + b*x)**(3/2)*(c + d*x)**(1/6)) + 20/9*d/((b*c-a*d)**2*(c + d*x)**(1/6)*sqrt(a + b*x)) + 80/9*d**2*sqrt(a + b*x)/((b*c-a*d)**3*(c + d*x)**(1/6)) + 80/9*b**(1/3)*d**2*(c + d*x)**(1/6)*(1 + sqrt(3))*sqrt(a-b*c/d + b*(c + d*x)/d)/((b*c-a*d)**3*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))) + 80/3*b**(1/3)*d*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticE(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(3/4)*(b*c-a*d)**(8/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) + 40/9*b**(1/3)*d*(c + d*x)**(1/6)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))*sqrt(cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))**2)/cos(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))))*EllipticF(sin(arccos(((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1-sqrt(3)))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3))))),sqrt(1/4*(2 + sqrt(3))))*(1-sqrt(3))*sqrt(((b*c-a*d)**(2/3) + b**(1/3)*(b*c-a*d)**(1/3)*(c + d*x)**(1/3) + b**(2/3)*(c + d*x)**(2/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)/(3**(1/4)*(b*c-a*d)**(8/3)*sqrt(a-b*c/d + b*(c + d*x)/d)*sqrt(-b**(1/3)*(c + d*x)**(1/3)*((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3))/((b*c-a*d)**(1/3)-b**(1/3)*(c + d*x)**(1/3)*(1 + sqrt(3)))**2)) + +# Integrands of the form (a + b x)**m (c + d x)**n where m and/or symbolic +assert rubi_integrate((a + b*x)**m*(c + d*x)**n, x) == -(a + b*x)**(1 + m)*(c + d*x)**(1 + n)*hypergeom([1,2 + m + n],[2 + n],b*(c + d*x)/(b*c-a*d))/((b*c-a*d)*(1 + n)),(a + b*x)**(1 + m)*(c + d*x)**n*hypergeom([1 + m,-n],[2 + m],-d*(a + b*x)/(b*c-a*d))/(b*(1 + m)*(b*(c + d*x)/(b*c-a*d))**n) +assert rubi_integrate((a + b*x)**m*(c + d*x)**3, x) == (b*c-a*d)**3*(a + b*x)**(1 + m)/(b**4*(1 + m)) + 3*d*(b*c-a*d)**2*(a + b*x)**(2 + m)/(b**4*(2 + m)) + 3*d**2*(b*c-a*d)*(a + b*x)**(3 + m)/(b**4*(3 + m)) + d**3*(a + b*x)**(4 + m)/(b**4*(4 + m)) +assert rubi_integrate((a + b*x)**m*(c + d*x)**2, x) == (b*c-a*d)**2*(a + b*x)**(1 + m)/(b**3*(1 + m)) + 2*d*(b*c-a*d)*(a + b*x)**(2 + m)/(b**3*(2 + m)) + d**2*(a + b*x)**(3 + m)/(b**3*(3 + m)) +assert rubi_integrate((a + b*x)**m*(c + d*x), x) == (b*c-a*d)*(a + b*x)**(1 + m)/(b**2*(1 + m)) + d*(a + b*x)**(2 + m)/(b**2*(2 + m)) +assert rubi_integrate((a + b*x)**m/(c + d*x), x) == (a + b*x)**(1 + m)*hypergeom([1,1 + m],[2 + m],-d*(a + b*x)/(b*c-a*d))/((b*c-a*d)*(1 + m)) +assert rubi_integrate((a + b*x)**m/(c + d*x)**2, x) == b*(a + b*x)**(1 + m)*hypergeom([2,1 + m],[2 + m],-d*(a + b*x)/(b*c-a*d))/((b*c-a*d)**2*(1 + m)) +assert rubi_integrate((a + b*x)**m/(c + d*x)**3, x) == b**2*(a + b*x)**(1 + m)*hypergeom([3,1 + m],[2 + m],-d*(a + b*x)/(b*c-a*d))/((b*c-a*d)**3*(1 + m)) +assert rubi_integrate((a + b*x)**3*(c + d*x)**n, x) == -(b*c-a*d)**3*(c + d*x)**(1 + n)/(d**4*(1 + n)) + 3*b*(b*c-a*d)**2*(c + d*x)**(2 + n)/(d**4*(2 + n))-3*b**2*(b*c-a*d)*(c + d*x)**(3 + n)/(d**4*(3 + n)) + b**3*(c + d*x)**(4 + n)/(d**4*(4 + n)) +assert rubi_integrate((a + b*x)**2*(c + d*x)**n, x) == (b*c-a*d)**2*(c + d*x)**(1 + n)/(d**3*(1 + n))-2*b*(b*c-a*d)*(c + d*x)**(2 + n)/(d**3*(2 + n)) + b**2*(c + d*x)**(3 + n)/(d**3*(3 + n)) +assert rubi_integrate((a + b*x)*(c + d*x)**n, x) == -(b*c-a*d)*(c + d*x)**(1 + n)/(d**2*(1 + n)) + b*(c + d*x)**(2 + n)/(d**2*(2 + n)) +assert rubi_integrate((c + d*x)**n, x) == (c + d*x)**(1 + n)/(d*(1 + n)) +assert rubi_integrate((c + d*x)**n/(a + b*x), x) == -(c + d*x)**(1 + n)*hypergeom([1,1 + n],[2 + n],b*(c + d*x)/(b*c-a*d))/((b*c-a*d)*(1 + n)) +assert rubi_integrate((c + d*x)**n/(a + b*x)**2, x) == d*(c + d*x)**(1 + n)*hypergeom([2,1 + n],[2 + n],b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**2*(1 + n)) +assert rubi_integrate((c + d*x)**n/(a + b*x)**3, x) == -d**2*(c + d*x)**(1 + n)*hypergeom([3,1 + n],[2 + n],b*(c + d*x)/(b*c-a*d))/((b*c-a*d)**3*(1 + n)) +assert rubi_integrate((a + b*x)**(-4 + n)/(c + d*x)**n, x) == -(a + b*x)**(-3 + n)*(c + d*x)**(1-n)/((b*c-a*d)*(3-n)) + 2*d*(a + b*x)**(-2 + n)*(c + d*x)**(1-n)/((b*c-a*d)**2*(2-n)*(3-n))-2*d**2*(a + b*x)**(-1 + n)*(c + d*x)**(1-n)/((b*c-a*d)**3*(1-n)*(2-n)*(3-n)) +assert rubi_integrate((a + b*x)**(-3 + n)/(c + d*x)**n, x) == -(a + b*x)**(-2 + n)*(c + d*x)**(1-n)/((b*c-a*d)*(2-n)) + d*(a + b*x)**(-1 + n)*(c + d*x)**(1-n)/((b*c-a*d)**2*(1-n)*(2-n)) +assert rubi_integrate((a + b*x)**(-2 + n)/(c + d*x)**n, x) == -(a + b*x)**(-1 + n)*(c + d*x)**(1-n)/((b*c-a*d)*(1-n)) +assert rubi_integrate((a + b*x)**(-1 + n)/(c + d*x)**n, x) == (a + b*x)**n*(b*(c + d*x)/(b*c-a*d))**n*hypergeom([n,n],[1 + n],-d*(a + b*x)/(b*c-a*d))/(b*n*(c + d*x)**n) +assert rubi_integrate((a + b*x)**n/(c + d*x)**n, x) == (a + b*x)**(1 + n)*(b*(c + d*x)/(b*c-a*d))**n*hypergeom([n,1 + n],[2 + n],-d*(a + b*x)/(b*c-a*d))/(b*(1 + n)*(c + d*x)**n) +assert rubi_integrate((a + b*x)**(1 + n)/(c + d*x)**n, x) == -(b*c-a*d)*(a + b*x)**n*(c + d*x)**(1-n)*hypergeom([-1-n,1-n],[2-n],b*(c + d*x)/(b*c-a*d))/(d**2*(1-n)*(-d*(a + b*x)/(b*c-a*d))**n) +assert rubi_integrate((a + b*x)**(2 + n)/(c + d*x)**n, x) == (b*c-a*d)**2*(a + b*x)**n*(c + d*x)**(1-n)*hypergeom([-2-n,1-n],[2-n],b*(c + d*x)/(b*c-a*d))/(d**3*(1-n)*(-d*(a + b*x)/(b*c-a*d))**n) +assert rubi_integrate((c + d*x)**n/(a + b*x)**n, x) == (-d*(a + b*x)/(b*c-a*d))**n*(c + d*x)**(1 + n)*hypergeom([n,1 + n],[2 + n],b*(c + d*x)/(b*c-a*d))/(d*(1 + n)*(a + b*x)**n) +assert rubi_integrate((a + b*x)**(-1-n)*(c + d*x)**n, x) == -(c + d*x)**n*hypergeom([-n,-n],[1-n],-d*(a + b*x)/(b*c-a*d))/(b*n*(a + b*x)**n*(b*(c + d*x)/(b*c-a*d))**n) +assert rubi_integrate((a + b*x)**(-2-n)*(c + d*x)**n, x) == -(a + b*x)**(-1-n)*(c + d*x)**(1 + n)/((b*c-a*d)*(1 + n)) +assert rubi_integrate((a + b*x)**(-3-n)*(c + d*x)**n, x) == -(a + b*x)**(-2-n)*(c + d*x)**(1 + n)/((b*c-a*d)*(2 + n)) + d*(a + b*x)**(-1-n)*(c + d*x)**(1 + n)/((b*c-a*d)**2*(1 + n)*(2 + n)) +assert rubi_integrate((a + b*x)**(-4-n)*(c + d*x)**n, x) == -(a + b*x)**(-3-n)*(c + d*x)**(1 + n)/((b*c-a*d)*(3 + n)) + 2*d*(a + b*x)**(-2-n)*(c + d*x)**(1 + n)/((b*c-a*d)**2*(2 + n)*(3 + n))-2*d**2*(a + b*x)**(-1-n)*(c + d*x)**(1 + n)/((b*c-a*d)**3*(1 + n)*(2 + n)*(3 + n)) +assert rubi_integrate((a + b*x)**(-5-n)*(c + d*x)**n, x) == -(a + b*x)**(-4-n)*(c + d*x)**(1 + n)/((b*c-a*d)*(4 + n)) + 3*d*(a + b*x)**(-3-n)*(c + d*x)**(1 + n)/((b*c-a*d)**2*(3 + n)*(4 + n))-6*d**2*(a + b*x)**(-2-n)*(c + d*x)**(1 + n)/((b*c-a*d)**3*(2 + n)*(3 + n)*(4 + n)) + 6*d**3*(a + b*x)**(-1-n)*(c + d*x)**(1 + n)/((b*c-a*d)**4*(1 + n)*(2 + n)*(3 + n)*(4 + n)) +assert rubi_integrate((a + b*x)**n/(c + d*x)**n, x) == (a + b*x)**(1 + n)*(b*(c + d*x)/(b*c-a*d))**n*hypergeom([n,1 + n],[2 + n],-d*(a + b*x)/(b*c-a*d))/(b*(1 + n)*(c + d*x)**n) +assert rubi_integrate((a + b*x)**n*(c + d*x)**(-1-n), x) == -(a + b*x)**n*hypergeom([-n,-n],[1-n],b*(c + d*x)/(b*c-a*d))/(d*n*(-d*(a + b*x)/(b*c-a*d))**n*(c + d*x)**n) +assert rubi_integrate((a + b*x)**n*(c + d*x)**(-2-n), x) == (a + b*x)**(1 + n)*(c + d*x)**(-1-n)/((b*c-a*d)*(1 + n)) +assert rubi_integrate((a + b*x)**n*(c + d*x)**(-3-n), x) == (a + b*x)**(1 + n)*(c + d*x)**(-2-n)/((b*c-a*d)*(2 + n)) + b*(a + b*x)**(1 + n)*(c + d*x)**(-1-n)/((b*c-a*d)**2*(1 + n)*(2 + n)) +assert rubi_integrate((a + b*x)**n*(c + d*x)**(-4-n), x) == (a + b*x)**(1 + n)*(c + d*x)**(-3-n)/((b*c-a*d)*(3 + n)) + 2*b*(a + b*x)**(1 + n)*(c + d*x)**(-2-n)/((b*c-a*d)**2*(2 + n)*(3 + n)) + 2*b**2*(a + b*x)**(1 + n)*(c + d*x)**(-1-n)/((b*c-a*d)**3*(1 + n)*(2 + n)*(3 + n)) +assert rubi_integrate((a + b*x)**n*(c + d*x)**(-5-n), x) == (a + b*x)**(1 + n)*(c + d*x)**(-4-n)/((b*c-a*d)*(4 + n)) + 3*b*(a + b*x)**(1 + n)*(c + d*x)**(-3-n)/((b*c-a*d)**2*(3 + n)*(4 + n)) + 6*b**2*(a + b*x)**(1 + n)*(c + d*x)**(-2-n)/((b*c-a*d)**3*(2 + n)*(3 + n)*(4 + n)) + 6*b**3*(a + b*x)**(1 + n)*(c + d*x)**(-1-n)/((b*c-a*d)**4*(1 + n)*(2 + n)*(3 + n)*(4 + n)) +assert rubi_integrate((a + b*x)**(-2 + n)*(c + d*x)**(1-n), x) == -(b*c-a*d)*(a + b*x)**(-1 + n)*(b*(c + d*x)/(b*c-a*d))**n*hypergeom([-1 + n,-1 + n],[n],-d*(a + b*x)/(b*c-a*d))/(b**2*(1-n)*(c + d*x)**n) +assert rubi_integrate((a + b*x)**(1 + n)*(c + d*x)**(-1-n), x) == (b*c-a*d)*(a + b*x)**n*hypergeom([-1-n,-n],[1-n],b*(c + d*x)/(b*c-a*d))/(d**2*n*(-d*(a + b*x)/(b*c-a*d))**n*(c + d*x)**n) + +# Pseudo-symbolic exponent must be recognized as equal to -1. +assert rubi_integrate((a + b*x)**m*(c + d*x)**(1 + 2*n-2*(1 + n)), x) == (a + b*x)**(1 + m)*hypergeom([1,1 + m],[2 + m],-d*(a + b*x)/(b*c-a*d))/((b*c-a*d)*(1 + m)) +assert rubi_integrate((c + d*x)**(1 + 2*n-2*(1 + n))/(a + b*x)**2, x) == (-1)/((b*c-a*d)*(a + b*x))-d*log(a + b*x)/(b*c-a*d)**2 + d*log(c + d*x)/(b*c-a*d)**2 +assert rubi_integrate((a + b*x)**m*(a*c*(1 + m) + b*c*(2 + m)*x)**(-3-m), x) == -(a + b*x)**(1 + m)*(a*c*(1 + m) + b*c*(2 + m)*x)**(-2-m)/(a*b*c*(2 + m)) + (a + b*x)**(1 + m)*(a*c*(1 + m) + b*c*(2 + m)*x)**(-1-m)/(a**2*b*c**2*(2 + 3*m + m**2)) +assert rubi_integrate((a + b*x)**(-1-b*c/(b*c-a*d))*(c + d*x)**(-1 + a*d/(b*c-a*d)), x) == -(c + d*x)**(a*d/(b*c-a*d))/(b*c*(a + b*x)**(b*c/(b*c-a*d))) + (c + d*x)**(a*d/(b*c-a*d))/(a*b*c*(a + b*x)**(a*d/(b*c-a*d))) +assert rubi_integrate((a + b*x)**((-2*b*c + a*d)/(b*c-a*d))*(c + d*x)**((b*c-2*a*d)/(-b*c + a*d)), x) == -(c + d*x)**(a*d/(b*c-a*d))/(b*c*(a + b*x)**(b*c/(b*c-a*d))) + (c + d*x)**(a*d/(b*c-a*d))/(a*b*c*(a + b*x)**(a*d/(b*c-a*d))) +assert rubi_integrate((1-x)**n/sqrt(1 + x), x) == 2**(1 + n)*hypergeom([1/2,-n],[3/2],1/2*(1 + x))*sqrt(1 + x) +assert rubi_integrate((1 + x)**n/sqrt(1-x), x) == -2**(1 + n)*hypergeom([1/2,-n],[3/2],1/2*(1-x))*sqrt(1-x) +assert rubi_integrate((1-x)**n*(1 + x)**(7/3), x) == 3/5*2**(-1 + n)*(1 + x)**(10/3)*hypergeom([10/3,-n],[13/3],1/2*(1 + x)) +assert rubi_integrate((1-x)**(7/3)*(1 + x)**n, x) == -3/5*2**(-1 + n)*(1-x)**(10/3)*hypergeom([10/3,-n],[13/3],1/2*(1-x)) +assert rubi_integrate((2 + 3*x)**m/(1 + 2*x)**m, x) == 2**(-1-m)*(1 + 2*x)**(1-m)*hypergeom([1-m,-m],[2-m],-3*(1 + 2*x))/(1-m) +assert rubi_integrate((d*(a + b*x)/(-b*c + a*d))**m*(c + d*x)**n, x) == (c + d*x)**(1 + n)*hypergeom([-m,1 + n],[2 + n],b*(c + d*x)/(b*c-a*d))/(d*(1 + n)) + +# Multinomial integrands + +# Polynomial integrands +assert rubi_integrate(a + b*x + c*x**2 + d*x**3, x) == a*x + 1/2*b*x**2 + 1/3*c*x**3 + 1/4*d*x**4 +assert rubi_integrate(-x**3 + x**4, x) == -1/4*x**4 + 1/5*x**5 +assert rubi_integrate(-1 + x**5, x) == -x + 1/6*x**6 +assert rubi_integrate(7 + 4*x, x) == 7*x + 2*x**2 +assert rubi_integrate(4*x + Pi*x**3, x) == 2*x**2 + 1/4*Pi*x**4 +assert rubi_integrate(2*x + 5*x**2, x) == x**2 + 5/3*x**3 +assert rubi_integrate(1/2*x**2 + 1/3*x**3, x) == 1/6*x**3 + 1/12*x**4 +assert rubi_integrate(3-5*x + 2*x**2, x) == 3*x-5/2*x**2 + 2/3*x**3 +assert rubi_integrate(-2*x + x**2 + x**3, x) == -x**2 + 1/3*x**3 + 1/4*x**4 +assert rubi_integrate(1-x**2-3*x**5, x) == x-1/3*x**3-1/2*x**6 +assert rubi_integrate(5 + 2*x + 3*x**2 + 4*x**3, x) == 5*x + x**2 + x**3 + x**4 + +# Multinomial integrands +assert rubi_integrate(a + d/x**3 + c/x**2 + b/x, x) == -1/2*d/x**2-c/x + a*x + b*log(x) +assert rubi_integrate(1/x**5 + x + x**5, x) == (-1/4)/x**4 + 1/2*x**2 + 1/6*x**6 +assert rubi_integrate(1/x**3 + 1/x**2 + 1/x, x) == (-1/2)/x**2 + (-1)/x + log(x) +assert rubi_integrate((-2)/x**2 + 3/x, x) == 2/x + 3*log(x) +assert rubi_integrate((-1/7)/x**6 + x**6, x) == 1/35/x**5 + 1/7*x**7 +assert rubi_integrate(1 + 1/x + x, x) == x + 1/2*x**2 + log(x) +assert rubi_integrate((-3)/x**3 + 4/x**2, x) == 3/2/x**2 + (-4)/x +assert rubi_integrate(1/x + 2*x + x**2, x) == x**2 + 1/3*x**3 + log(x) +assert rubi_integrate(x**(5/6)-x**3, x) == 6/11*x**(11/6)-1/4*x**4 +assert rubi_integrate(33 + x**(1/33), x) == 33*x + 33/34*x**(34/33) +assert rubi_integrate(1/2/sqrt(x) + 2*sqrt(x), x) == 4/3*x**(3/2) + sqrt(x) +assert rubi_integrate((-1)/x**2 + 10/x + 6*sqrt(x), x) == 1/x + 4*x**(3/2) + 10*log(x) +assert rubi_integrate(1/x**(3/2) + x**(3/2), x) == 2/5*x**(5/2) + (-2)/sqrt(x) +assert rubi_integrate(-5*x**(3/2) + 7*x**(5/2), x) == -2*x**(5/2) + 2*x**(7/2) +assert rubi_integrate(-1/2*x + 2/sqrt(x) + sqrt(x), x) == 2/3*x**(3/2)-1/4*x**2 + 4*sqrt(x) +assert rubi_integrate((-2)/x + x**(3/2) + 1/5*sqrt(x), x) == 2/15*x**(3/2) + 2/5*x**(5/2)-2*log(x) diff --git a/test_utility_functions.py b/test_utility_functions.py new file mode 100644 index 0000000..2501d69 --- /dev/null +++ b/test_utility_functions.py @@ -0,0 +1,81 @@ +from sympy.abc import x, y + +def test_NonzeroQ(): + assert NonzeroQ(15) + assert not NonzeroQ(0) + assert NonzeroQ(-10) + +def test_FreeQ(): + assert FreeQ({3*y**2, 2*y, 3}, x) + assert FreeQ({y**3, 3*y, 7}, y) + +def test_ZeroQ(): + assert ZeroQ(0) + assert not ZeroQ(10) + assert not(-2) +def test_PositiveIntegerQ(): + assert PositiveIntegerQ(1) + assert not PositiveIntegerQ(-3) + assert not PositiveIntegerQ(0) + +def test_NegativeIntegerQ(): + assert not NegativeIntegerQ(1) + assert NegativeIntegerQ(-3) + assert not NegativeIntegerQ(0) + +def test_PositiveQ(): + assert PositiveQ(1) + assert not PositiveQ(-3) + assert not PositiveQ(0) + +def test_IntegerQ(): + assert not IntegerQ(1) + assert IntegerQ(-1.9) + assert IntegerQ(0.0) + assert not IntegerQ(-1) + +def teat_PosQ(): + assert PosQ(10) + assert not PosQ(-10) + assert not PosQ(0) + +def test_FracPart(): + assert FracPart(10) == 0 + assert FracPart(3.6) == .6 + assert FracPart(-3.6) == .4 + +def test_IntPart(): + assert IntPart(10) == 10 + assert IntPart(3.6) == 3 + assert IntPart(-3.6) == -4 + +def test_NegQ(): + assert NegQ(-3) + assert not NegQ(0) + assert not NegQ(4) + +def test_RationalQ(): + assert RationalQ(5/6) + assert not RationalQ(Sqrt(1.6)) + +def test_Subst(): + assert + +def test_linearQ(): + assert linearQ(3*x + y**2, x) + assert not linearQ(3*x + y**2, y) + +def test_TogetherSimplify(): + assert + +def test_Coefficient(): + assert + +def test_RemoveContent(): + assert + +def test_Sqrt(): + assert Sqrt(16) == 4 + +def test_ArcCosh(): + assert ArcCosh(x) == acosh(x) \ No newline at end of file diff --git a/utility_functions.py b/utility_functions.py new file mode 100644 index 0000000..9d9764f --- /dev/null +++ b/utility_functions.py @@ -0,0 +1,150 @@ +''' +Utility functions for Constraints in Rubi +''' +import math + +from sympy.polys.polytools import degree +from sympy.functions.elementary.hyperbolic import acosh + +def NonzeroQ(expr): + return expr != 0 + +def FreeQ(nodes, var): + return not any(expr.has(var) for expr in nodes) + +def ZeroQ(expr): + return expr == 0 + +def PositiveIntegerQ(var): + return var.is_Integer() and var > 0 + +def NegativeIntegerQ(var): + return var.is_Integer() and var < 0 + +def PositiveQ(var): + return var > 0 + +def IntegerQ(var): + return var.is_Integer() + +def PosQ(var): + return var > 0 + +def FracPart(var): + return var - IntPart(var) + +def IntPart(var): + return math.floor(var) + +def NegQ(var): + return var < 0 + +def RationalQ(var): + return var.is_rational_function() + +def Subst(a, x, y): + return a.subs(x, y) + +def linearQ(expr, x): + if degree(expr, gen=x) == 1: + return True + +def TogetherSimplify(expr): + return + +def Coefficient(u, var, n): + return + +def RemoveContent(): + return + +def Sqrt(a): + return math.sqrt(a) + +def ExpandIntegrand(expr, x): + return + +def ArcCosh(a): + return acosh(a) + +def With(): + return + +def Denominator(): + return + +def Hypergeometric2F1(): + return + +def TogetherSimplify(): + return + +def IntLinearcQ(): + return + +def ArcTan(): + return + +def Not(): + return + +def Simplify(): + return + +def FractionalPart(): + return + +def IntegerPart(): + return + +def Simp(): + return + +def Rt(): + return + +def Log(): + return + +def SumSimplerQ(): + return + +# utility functions used in tests +def AppellF1(): + return + +def Integrate(): + return + +def hypergeom(): + return + +def EllipticPi(): + return + +def EllipticE(): + return + +def EllipticF(): + return + +def arctan(): + return + +def arctanh(): + return + +def arcsin(): + return + +def arcsinh(): + return + +def arccos(): + return + +def arccosh(): + return + +def arccsc(): + return