Formal (multivariate) power series - Inverses #
This file defines multivariate formal power series and develops the basic properties of these objects, when it comes about multiplicative inverses.
For φ : MvPowerSeries σ R and u : Rˣ is the constant coefficient of φ,
MvPowerSeries.invOfUnit φ u is a formal power series such,
and MvPowerSeries.mul_invOfUnit proves that φ * invOfUnit φ u = 1.
The construction of the power series invOfUnit is done by writing that
relation and solving and for its coefficients by induction.
Over a field, all power series φ have an “inverse” MvPowerSeries.inv φ,
which is 0 if and only if the constant coefficient of φ is zero
(by MvPowerSeries.inv_eq_zero),
and MvPowerSeries.mul_inv_cancel asserts the equality φ * φ⁻¹ = 1 when
the constant coefficient of φ is nonzero.
Instances are defined:
- Formal power series over a local ring form a local ring.
- The morphism
MvPowerSeries.map σ f : MvPowerSeries σ A →* MvPowerSeries σ Binduced by a local morphismf : A →+* B(IsLocalRingHom f) of commutative rings is a local morphism.
Auxiliary definition that unifies
the totalised inverse formal power series (_)⁻¹ and
the inverse formal power series that depends on
an inverse of the constant coefficient invOfUnit.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A multivariate formal power series is invertible if the constant coefficient is invertible.
Equations
- MvPowerSeries.invOfUnit φ u = MvPowerSeries.inv.aux (↑u⁻¹) φ
Instances For
Multivariate formal power series over a local ring form a local ring.
Equations
- ⋯ = ⋯
The map between multivariate formal power series over the same indexing set
induced by a local ring hom A → B is local
Equations
- ⋯ = ⋯
The inverse 1/f of a multivariable power series f over a field
Equations
- MvPowerSeries.inv φ = MvPowerSeries.inv.aux ((MvPowerSeries.constantCoeff σ k) φ)⁻¹ φ
Instances For
Equations
- MvPowerSeries.instInvMvPowerSeries = { inv := MvPowerSeries.inv }
Equations
- MvPowerSeries.instInvOneClassMvPowerSeries = let __src := inferInstanceAs (One (MvPowerSeries σ k)); let __src_1 := inferInstanceAs (Inv (MvPowerSeries σ k)); InvOneClass.mk ⋯