Base change of polynomial algebras #
Given [CommSemiring R] [Semiring A] [Algebra R A] we show A[X] ≃ₐ[R] (A ⊗[R] R[X]).
(Implementation detail).
The function underlying A ⊗[R] R[X] →ₐ[R] A[X],
as a bilinear function of two arguments.
Equations
Instances For
(Implementation detail).
The function underlying A ⊗[R] R[X] →ₐ[R] A[X],
as a linear map.
Equations
Instances For
(Implementation detail).
The algebra homomorphism A ⊗[R] R[X] →ₐ[R] A[X].
Equations
Instances For
(Implementation detail.)
The bare function A[X] → A ⊗[R] R[X].
(We don't need to show that it's an algebra map, thankfully --- just that it's an inverse.)
Equations
Instances For
(Implementation detail)
The equivalence, ignoring the algebra structure, (A ⊗[R] R[X]) ≃ A[X].
Equations
- PolyEquivTensor.equiv R A = { toFun := ⇑(PolyEquivTensor.toFunAlgHom R A), invFun := PolyEquivTensor.invFun R A, left_inv := ⋯, right_inv := ⋯ }
Instances For
The R-algebra isomorphism A[X] ≃ₐ[R] (A ⊗[R] R[X]).
Equations
- One or more equations did not get rendered due to their size.
Instances For
The A-algebra isomorphism A[X] ≃ₐ[A] A ⊗[R] R[X] (when A is commutative).
Equations
- polyEquivTensor' R A = { toEquiv := (polyEquivTensor R A).toEquiv, map_mul' := ⋯, map_add' := ⋯, commutes' := ⋯ }
Instances For
polyEquivTensor' R A is the same as polyEquivTensor R A as a function.
If A is an R-algebra, then A[X] is an R[X] algebra.
This gives a diamond for Algebra R[X] R[X][X], so this is not a global instance.
Equations
- Polynomial.algebra R A = (Polynomial.mapRingHom (algebraMap R A)).toAlgebra' ⋯