Division of univariate polynomials #
The main defs are divByMonic and modByMonic.
The compatibility between these is given by modByMonic_add_div.
We also define rootMultiplicity.
See divByMonic.
Equations
Instances For
divByMonic, denoted as p /ₘ q, gives the quotient of p by a monic polynomial q.
Equations
Instances For
modByMonic, denoted as p %ₘ q, gives the remainder of p by a monic polynomial q.
Equations
Instances For
divByMonic, denoted as p /ₘ q, gives the quotient of p by a monic polynomial q.
Equations
Instances For
modByMonic, denoted as p %ₘ q, gives the remainder of p by a monic polynomial q.
Equations
Instances For
See Polynomial.mul_self_modByMonic for the other multiplication order. That version, unlike
this one, requires commutativity.
An algorithm for deciding polynomial divisibility.
The algorithm is "compute p %ₘ q and compare to 0".
See Polynomial.modByMonic for the algorithm that computes %ₘ.
Equations
Instances For
The largest power of X - C a which divides p.
This could be computable via the divisibility algorithm Polynomial.decidableDvdMonic,
as shown by Polynomial.rootMultiplicity_eq_nat_find_of_nonzero which has a computable RHS.
Equations
Instances For
See Polynomial.self_mul_modByMonic for the other multiplication order. This version, unlike
that one, requires commutativity.
The multiplicity of a as root of a nonzero polynomial p is at least n iff
(X - a) ^ n divides p.
The multiplicity of p + q is at least the minimum of the multiplicities.
See Polynomial.rootMultiplicity_eq_natTrailingDegree for the general case.
Division by a monic polynomial doesn't change the leading coefficient.