예제 #1
0
def test_Monomial():
    assert Monomial(1, 2, 3).data == (1, 2, 3)

    m, n = Monomial(3, 4, 1), Monomial(1, 2, 0)

    assert m*n == Monomial(4, 6, 1)
    assert m/n == Monomial(2, 2, 1)

    assert m.gcd(n) == Monomial(1, 2, 0)
    assert m.lcm(n) == Monomial(3, 4, 1)

    a, b, c = [ Monomial(*monom) for monom in [(3,4,5), (0,5,1), (6,3,9)] ]

    assert Monomial.max(a, b, c) == Monomial(6, 5, 9)
    assert Monomial.min(a, b, c) == Monomial(0, 3, 1)

    n = Monomial(5, 2, 0)

    raises(ExactQuotientFailed, "m / n")

    assert n.as_expr(x, y, z) == x**5*y**2
예제 #2
0
def test_Monomial():
    assert Monomial(1, 2, 3).data == (1, 2, 3)

    m, n = Monomial(3, 4, 1), Monomial(1, 2, 0)

    assert m * n == Monomial(4, 6, 1)
    assert m / n == Monomial(2, 2, 1)

    assert m.gcd(n) == Monomial(1, 2, 0)
    assert m.lcm(n) == Monomial(3, 4, 1)

    a, b, c = [Monomial(*monom) for monom in [(3, 4, 5), (0, 5, 1), (6, 3, 9)]]

    assert Monomial.max(a, b, c) == Monomial(6, 5, 9)
    assert Monomial.min(a, b, c) == Monomial(0, 3, 1)

    n = Monomial(5, 2, 0)

    raises(ExactQuotientFailed, "m / n")

    assert n.as_expr(x, y, z) == x**5 * y**2