Theory of univariate polynomials #
We show that polynomial A is an R-algebra when A is an R-algebra.
We promote eval₂ to an algebra hom in aeval.
Note that this instance also provides algebra R R[X].
Equations
When we have [comm_ring R], the function C is the same as algebra_map R R[X].
(But note that C is defined when R is not necessarily commutative, in which case
algebra_map is not available.)
Extensionality lemma for algebra maps out of polynomial A' over a smaller base ring than A'
Algebra isomorphism between polynomial R and add_monoid_algebra R ℕ. This is just an
implementation detail, but it can be useful to transfer results from finsupp to polynomials.
Equations
- polynomial.to_finsupp_iso_alg R = {to_fun := (polynomial.to_finsupp_iso R).to_fun, inv_fun := (polynomial.to_finsupp_iso R).inv_fun, left_inv := _, right_inv := _, map_mul' := _, map_add' := _, commutes' := _}
Given a valuation x of the variable in an R-algebra A, aeval R A x is
the unique R-algebra homomorphism from R[X] to A sending X to x.
This is a stronger variant of the linear map polynomial.leval.
Equations
- polynomial.aeval x = {to_fun := (polynomial.eval₂_ring_hom' (algebra_map R A) x _).to_fun, map_one' := _, map_mul' := _, map_zero' := _, map_add' := _, commutes' := _}
Version of aeval for defining algebra homs out of polynomial R over a smaller base ring
than R.
The evaluation map is not generally multiplicative when the coefficient ring is noncommutative,
but nevertheless any polynomial of the form p * (X - monomial 0 r) is sent to zero
when evaluated at r.
This is the key step in our proof of the Cayley-Hamilton theorem.