예제 #1
0
    def replacement1885(v, x, u):

        a = D(u, x)
        b = D(v, x)
        rubi.append(1885)
        return -Dist(a / (-a * v + b * u), Int(S(1) / u, x), x) + Dist(
            b / (-a * v + b * u), Int(S(1) / v, x), x)
예제 #2
0
 def With1899(u, b, a, n, x):
     c = D(u, x)
     rubi.append(1899)
     return -Dist(c * n / b,
                  Int(u**(n + S(-1)) *
                      (a + b * x) * log(a + b * x), x), x) - Int(
                          u**n, x) + Simp(
                              u**n * (a + b * x) * log(a + b * x) / b, x)
예제 #3
0
def With1903(a, b, m, n, u, x):
    c = D(u, x)
    return -Dist(
        c * n / (b * (m + S(1))),
        Int(u**(n + S(-1)) *
            (a + b * x)**(m + S(1)) * log(a + b * x), x), x) - Dist(
                S(1) / (m + S(1)), Int(u**n * (a + b * x)**m, x), x) + Simp(
                    u**n * (a + b * x)**(m + S(1)) * log(a + b * x) /
                    (b * (m + S(1))), x)
예제 #4
0
 def With1900(u, m, b, a, n, x):
     c = D(u, x)
     rubi.append(1900)
     return -Dist(
         c * n / (b * (m + S(1))),
         Int(u**(n + S(-1)) *
             (a + b * x)**(m + S(1)) * log(a + b * x), x), x) - Dist(
                 S(1) /
                 (m + S(1)), Int(u**n * (a + b * x)**m, x), x) + Simp(
                     u**n * (a + b * x)**(m + S(1)) * log(a + b * x) /
                     (b * (m + S(1))), x)
예제 #5
0
    def replacement1883(v, x, u):

        a = D(u, x)
        b = D(v, x)
        rubi.append(1883)
        return -Dist(
            (-a * v + b * u) / a, Int(S(1) / u, x), x) + Simp(b * x / a, x)
    def replacement36(p, u, Pq, Qr, x):

        gcd = PolyGCD(Pq, Qr, x)
        rubi.append(36)
        return Int(
            gcd**(p + S(1)) * u * PolynomialQuotient(Pq, gcd, x) *
            PolynomialQuotient(Qr, gcd, x)**p, x)
    def replacement35(p, u, m, Pq, Qr, x):

        gcd = PolyGCD(Pq, Qr, x)
        rubi.append(35)
        return Int(
            gcd**(m + p) * u * PolynomialQuotient(Pq, gcd, x)**m *
            PolynomialQuotient(Qr, gcd, x)**p, x)
    def replacement34(p, Pm, b, n2, c, a, n, Qm, x):

        m = Expon(Pm, x)
        rubi.append(34)
        return Dist(
            Coeff(Qm, x, m + S(-1)) / (m * Coeff(Pm, x, m)),
            Subst(Int((a + b * x**n + c * x**(S(2) * n))**p, x), x, Pm), x)
    def replacement33(p, Pm, b, a, n, Qm, x):

        m = Expon(Pm, x)
        rubi.append(33)
        return Dist(
            Coeff(Qm, x, m + S(-1)) / (m * Coeff(Pm, x, m)),
            Subst(Int((a + b * x**n)**p, x), x, Pm), x)
 def replacement22(B, v, C, u, m, b, a, x, A):
     rubi.append(22)
     return Dist(
         b**(S(-2)),
         Int(
             u * (a + b * v)**(m + S(1)) *
             Simp(B * b - C * a + C * b * v, x), x), x)
예제 #11
0
def replacement1896(m, n, u, v, x):

    a = D(u, x)
    b = D(v, x)
    return -Dist(b * n / (a *
                          (m + S(1))), Int(u**(m + S(1)) * v**(n + S(-1)), x),
                 x) + Simp(u**(m + S(1)) * v**n / (a * (m + S(1))), x)
예제 #12
0
def replacement19(a, b, m, n, u, v, x):
    return Dist(
        a**(-IntPart(n)) * b**IntPart(n) * (a * v)**(-FracPart(n)) *
        (b * v)**FracPart(n),
        Int(u * (a * v)**(m + n), x),
        x,
    )
예제 #13
0
def replacement24(A, B, C, a, b, m, u, v, x):
    return Dist(
        b**(S(-2)),
        Int(u * (a + b * v)**(m + S(1)) * Simp(B * b - C * a + C * b * v, x),
            x),
        x,
    )
예제 #14
0
def replacement37(Pq, Qr, m, p, u, x):

    gcd = PolyGCD(Pq, Qr, x)
    return Int(
        gcd**(m + p) * u * PolynomialQuotient(Pq, gcd, x)**m *
        PolynomialQuotient(Qr, gcd, x)**p,
        x,
    )
예제 #15
0
def replacement36(Pm, Qm, a, b, c, n, n2, p, x):

    m = Expon(Pm, x)
    return Dist(
        Coeff(Qm, x, m + S(-1)) / (m * Coeff(Pm, x, m)),
        Subst(Int((a + b * x**n + c * x**(S(2) * n))**p, x), x, Pm),
        x,
    )
예제 #16
0
def replacement35(Pm, Qm, a, b, n, p, x):

    m = Expon(Pm, x)
    return Dist(
        Coeff(Qm, x, m + S(-1)) / (m * Coeff(Pm, x, m)),
        Subst(Int((a + b * x**n)**p, x), x, Pm),
        x,
    )
예제 #17
0
    def replacement1884(v, x, n, u):

        a = D(u, x)
        b = D(v, x)
        rubi.append(1884)
        return -Dist(
            (-a * v + b * u) / a, Int(v**(n + S(-1)) / u, x), x) + Simp(
                v**n / (a * n), x)
예제 #18
0
def replacement1898(m, n, u, v, x):

    a = D(u, x)
    b = D(v, x)
    return -Dist(n * (-a * v + b * u) /
                 (a *
                  (m + n + S(1))), Int(u**m * v**(n + S(-1)), x), x) + Simp(
                      u**(m + S(1)) * v**n / (a * (m + n + S(1))), x)
예제 #19
0
    def replacement1895(v, u, m, n, x):

        a = D(u, x)
        b = D(v, x)
        rubi.append(1895)
        return -Dist(n * (-a * v + b * u) /
                     (a * (m + n + S(1))), Int(u**m * v**(n + S(-1)), x),
                     x) + Simp(u**(m + S(1)) * v**n / (a * (m + n + S(1))), x)
예제 #20
0
    def replacement1893(v, u, m, n, x):

        a = D(u, x)
        b = D(v, x)
        rubi.append(1893)
        return -Dist(b * n /
                     (a * (m + S(1))), Int(u**(m + S(1)) * v**(n + S(-1)), x),
                     x) + Simp(u**(m + S(1)) * v**n / (a * (m + S(1))), x)
예제 #21
0
    def replacement1888(v, x, n, u):

        a = D(u, x)
        b = D(v, x)
        rubi.append(1888)
        return -Dist(a /
                     (-a * v + b * u), Int(v**(n + S(1)) / u, x), x) + Simp(
                         v**(n + S(1)) / ((n + S(1)) * (-a * v + b * u)), x)
예제 #22
0
def replacement38(Pq, Qr, p, u, x):

    gcd = PolyGCD(Pq, Qr, x)
    return Int(
        gcd**(p + S(1)) * u * PolynomialQuotient(Pq, gcd, x) *
        PolynomialQuotient(Qr, gcd, x)**p,
        x,
    )
예제 #23
0
def replacement1900(m, n, u, v, x):

    a = D(u, x)
    b = D(v, x)
    return Dist(b * (m + n + S(2)) /
                ((m + S(1)) *
                 (-a * v + b * u)), Int(u**(m + S(1)) * v**n, x), x) - Simp(
                     u**(m + S(1)) * v**(n + S(1)) / ((m + S(1)) *
                                                      (-a * v + b * u)), x)
예제 #24
0
    def replacement1897(v, u, m, n, x):

        a = D(u, x)
        b = D(v, x)
        rubi.append(1897)
        return Dist(b * (m + n + S(2)) / (
            (m + S(1)) *
            (-a * v + b * u)), Int(u**(m + S(1)) * v**n, x), x) - Simp(
                u**(m + S(1)) * v**(n + S(1)) / ((m + S(1)) *
                                                 (-a * v + b * u)), x)
 def With19(x, n, b, u, a, m):
     c = D(u, x)
     return -Int(u**n * (a + b * x)**m, x) / (m + S(1)) - c * n * Int(
         u**(n + S(-1)) * (a + b * x)**
         (m + S(1)) * log(a + b * x), x) / (b * (m + S(1))) + u**n * (
             a + b * x)**(m + S(1)) * log(a + b * x) / (b * (m + S(1)))
 def With18(x, n, b, u, a):
     c = D(u, x)
     return -Int(u**n, x) - c * n * Int(
         u**(n + S(-1)) * (a + b * x) * log(a + b * x),
         x) / b + u**n * (a + b * x) * log(a + b * x) / b
 def With16(x, n, v, u, m):
     a = D(u, x)
     b = D(v, x)
     return b * (m + n + S(2)) * Int(u**(m + S(1)) * v**n, x) / (
         (m + S(1)) * (-a * v + b * u)) - u**(m + S(1)) * v**(n + S(1)) / (
             (m + S(1)) * (-a * v + b * u))
 def With14(x, n, v, u, m):
     a = D(u, x)
     b = D(v, x)
     return -n * (-a * v + b * u) * Int(u**m * v**(n + S(-1)), x) / (
         a * (m + n + S(1))) + u**(m + S(1)) * v**n / (a * (m + n + S(1)))
 def With12(x, n, v, u, m):
     a = D(u, x)
     b = D(v, x)
     return -b * n * Int(u**(m + S(1)) * v**(n + S(-1)), x) / (
         a * (m + S(1))) + u**(m + S(1)) * v**n / (a * (m + S(1)))
 def With7(x, n, v, u):
     a = D(u, x)
     b = D(v, x)
     return -a * Int(v**(n + S(1)) / u, x) / (-a * v + b * u) + v**(
         n + S(1)) / ((n + S(1)) * (-a * v + b * u))