Exemple #1
0
def test_apart_undetermined_coeffs():
    p = Poly(2*x - 3)
    q = Poly(x**9 - x**8 - x**6 + x**5 - 2*x**2 + 3*x - 1)
    r = (-x**7 - x**6 - x**5 + 4)/(x**8 - x**5 - 2*x + 1) + 1/(x - 1)

    assert apart_undetermined_coeffs(p, q) == r

    p = Poly(1, x, domain='ZZ[a,b]')
    q = Poly((x + a)*(x + b), x, domain='ZZ[a,b]')
    r = 1/((a - b)*(b + x)) - 1/((a - b)*(a + x))

    assert apart_undetermined_coeffs(p, q) == r
Exemple #2
0
def test_apart_undetermined_coeffs():
    p = Poly(2 * x - 3)
    q = Poly(x**9 - x**8 - x**6 + x**5 - 2 * x**2 + 3 * x - 1)
    r = (-x**7 - x**6 - x**5 + 4) / (x**8 - x**5 - 2 * x + 1) + 1 / (x - 1)

    assert apart_undetermined_coeffs(p, q) == r

    p = Poly(1, x, domain='ZZ[a,b]')
    q = Poly((x + a) * (x + b), x, domain='ZZ[a,b]')
    r = 1 / ((a - b) * (b + x)) - 1 / ((a - b) * (a + x))

    assert apart_undetermined_coeffs(p, q) == r
Exemple #3
0
def test_apart_undetermined_coeffs():
    p = (2 * x - 3).as_poly()
    q = (x**9 - x**8 - x**6 + x**5 - 2 * x**2 + 3 * x - 1).as_poly()
    r = (-x**7 - x**6 - x**5 + 4) / (x**8 - x**5 - 2 * x + 1) + 1 / (x - 1)

    assert apart_undetermined_coeffs(p, q) == r

    dom = ZZ.inject(a, b)
    p = Integer(1).as_poly(x, domain=dom)
    q = ((x + a) * (x + b)).as_poly(x, domain=dom)
    r = 1 / ((a - b) * (b + x)) - 1 / ((a - b) * (a + x))

    assert apart_undetermined_coeffs(p, q) == r