mv_polynomial

Multivariate polynomial, where σ is the index set of the variables and α is the coefficient ring

mv_polynomial.monomial

monomial s a is the monomial a * X^s

mv_polynomial.C

C a is the constant polynomial with value a

mv_polynomial.X

X n is the polynomial with value X_n

mv_polynomial.coeff

The coefficient of the monomial m in the multi-variable polynomial p.

mv_polynomial.eval₂

Evaluate a polynomial p given a valuation g of all the variables and a ring hom f from the scalar ring to the target

mv_polynomial.eval

Evaluate a polynomial p given a valuation f of all the variables

mv_polynomial.map

map f p maps a polynomial p across a ring hom f

mv_polynomial.degrees

The maximal degrees of each variable in a multi-variable polynomial, expressed as a multiset.

(For example, degrees (x^2 * y + y^3) would be {x, x, y, y, y}.)

mv_polynomial.vars

vars p is the set of variables appearing in the polynomial p

mv_polynomial.degree_of

degree_of n p gives the highest power of X_n that appears in p

mv_polynomial.total_degree

total_degree p gives the maximum |s| over the monomials X^s in p

mv_polynomial.eval₂_hom_X

A ring homomorphism f : Z[X_1, X_2, ...] → R is determined by the evaluations f(X_1), f(X_2), ...

mv_polynomial.hom_equiv

Ring homomorphisms out of integer polynomials on a type σ are the same as functions out of the type σ,

mv_polynomial.rename

Rename all the variables in a multivariable polynomial.

mv_polynomial.pempty_ring_equiv

The ring isomorphism between multivariable polynomials in no variables and the ground ring.

mv_polynomial.punit_ring_equiv

The ring isomorphism between multivariable polynomials in a single variable and polynomials over the ground ring.

mv_polynomial.ring_equiv_of_equiv

The ring isomorphism between multivariable polynomials induced by an equivalence of the variables.

mv_polynomial.ring_equiv_congr

The ring isomorphism between multivariable polynomials induced by a ring isomorphism of the ground ring.

mv_polynomial.sum_to_iter

The function from multivariable polynomials in a sum of two types, to multivariable polynomials in one of the types, with coefficents in multivariable polynomials in the other type.

See sum_ring_equiv for the ring isomorphism.

mv_polynomial.iter_to_sum

The function from multivariable polynomials in one type, with coefficents in multivariable polynomials in another type, to multivariable polynomials in the sum of the two types.

See sum_ring_equiv for the ring isomorphism.

mv_polynomial.mv_polynomial_equiv_mv_polynomial

A helper function for sum_ring_equiv.

mv_polynomial.sum_ring_equiv

The ring isomorphism between multivariable polynomials in a sum of two types, and multivariable polynomials in one of the types, with coefficents in multivariable polynomials in the other type.

mv_polynomial.option_equiv_left

The ring isomorphism between multivariable polynomials in option β and polynomials with coefficients in mv_polynomial β α.

mv_polynomial.option_equiv_right

The ring isomorphism between multivariable polynomials in option β and multivariable polynomials with coefficients in polynomials.