Documentation

Mathlib.RingTheory.PowerSeries.Inverse

Formal power series - Inverses #

If the constant coefficient of a formal (univariate) power series is invertible, then this formal power series is invertible. (See the discussion in Mathlib/RingTheory/MvPowerSeries/Inverse.lean for the construction.)

Formal (univariate) power series over a local ring form a local ring.

Formal (univariate) power series over a field form a discrete valuation ring, and a normalization monoid. The definition residueFieldOfPowerSeries provides the isomorphism between the residue field of kโŸฆXโŸง and k, when k is a field.

def PowerSeries.inv.aux {R : Type u_1} [Ring R] :
R โ†’ PowerSeries R โ†’ PowerSeries R

Auxiliary function used for computing inverse of a power series

Equations
    Instances For
      theorem PowerSeries.coeff_inv_aux {R : Type u_1} [Ring R] (n : โ„•) (a : R) (ฯ† : PowerSeries R) :
      (coeff n) (inv.aux a ฯ†) = if n = 0 then a else -a * โˆ‘ x โˆˆ Finset.antidiagonal n, if x.2 < n then (coeff x.1) ฯ† * (coeff x.2) (inv.aux a ฯ†) else 0
      def PowerSeries.invOfUnit {R : Type u_1} [Ring R] (ฯ† : PowerSeries R) (u : Rหฃ) :

      A formal power series is invertible if the constant coefficient is invertible.

      Equations
        Instances For
          theorem PowerSeries.coeff_invOfUnit {R : Type u_1} [Ring R] (n : โ„•) (ฯ† : PowerSeries R) (u : Rหฃ) :
          (coeff n) (ฯ†.invOfUnit u) = if n = 0 then โ†‘uโปยน else -โ†‘uโปยน * โˆ‘ x โˆˆ Finset.antidiagonal n, if x.2 < n then (coeff x.1) ฯ† * (coeff x.2) (ฯ†.invOfUnit u) else 0
          @[simp]
          theorem PowerSeries.mul_invOfUnit {R : Type u_1} [Ring R] (ฯ† : PowerSeries R) (u : Rหฃ) (h : constantCoeff ฯ† = โ†‘u) :
          ฯ† * ฯ†.invOfUnit u = 1
          @[simp]
          theorem PowerSeries.invOfUnit_mul {R : Type u_1} [Ring R] (ฯ† : PowerSeries R) (u : Rหฃ) (h : constantCoeff ฯ† = โ†‘u) :
          ฯ†.invOfUnit u * ฯ† = 1
          theorem PowerSeries.sub_const_eq_shift_mul_X {R : Type u_1} [Ring R] (ฯ† : PowerSeries R) :
          ฯ† - C (constantCoeff ฯ†) = (mk fun (p : โ„•) => (coeff (p + 1)) ฯ†) * X

          Two ways of removing the constant coefficient of a power series are the same.

          theorem PowerSeries.sub_const_eq_X_mul_shift {R : Type u_1} [Ring R] (ฯ† : PowerSeries R) :
          ฯ† - C (constantCoeff ฯ†) = X * mk fun (p : โ„•) => (coeff (p + 1)) ฯ†
          def PowerSeries.inv {k : Type u_2} [Field k] :

          The inverse 1/f of a power series f defined over a field

          Equations
            Instances For
              theorem PowerSeries.coeff_inv {k : Type u_2} [Field k] (n : โ„•) (ฯ† : PowerSeries k) :
              (coeff n) ฯ†โปยน = if n = 0 then (constantCoeff ฯ†)โปยน else -(constantCoeff ฯ†)โปยน * โˆ‘ x โˆˆ Finset.antidiagonal n, if x.2 < n then (coeff x.1) ฯ† * (coeff x.2) ฯ†โปยน else 0
              @[simp]
              theorem PowerSeries.invOfUnit_eq {k : Type u_2} [Field k] (ฯ† : PowerSeries k) (h : constantCoeff ฯ† โ‰  0) :
              @[simp]
              theorem PowerSeries.invOfUnit_eq' {k : Type u_2} [Field k] (ฯ† : PowerSeries k) (u : kหฃ) (h : constantCoeff ฯ† = โ†‘u) :
              @[simp]
              theorem PowerSeries.mul_inv_cancel {k : Type u_2} [Field k] (ฯ† : PowerSeries k) (h : constantCoeff ฯ† โ‰  0) :
              ฯ† * ฯ†โปยน = 1
              @[simp]
              theorem PowerSeries.inv_mul_cancel {k : Type u_2} [Field k] (ฯ† : PowerSeries k) (h : constantCoeff ฯ† โ‰  0) :
              ฯ†โปยน * ฯ† = 1
              theorem PowerSeries.eq_mul_inv_iff_mul_eq {k : Type u_2} [Field k] {ฯ†โ‚ ฯ†โ‚‚ ฯ†โ‚ƒ : PowerSeries k} (h : constantCoeff ฯ†โ‚ƒ โ‰  0) :
              ฯ†โ‚ = ฯ†โ‚‚ * ฯ†โ‚ƒโปยน โ†” ฯ†โ‚ * ฯ†โ‚ƒ = ฯ†โ‚‚
              theorem PowerSeries.eq_inv_iff_mul_eq_one {k : Type u_2} [Field k] {ฯ† ฯˆ : PowerSeries k} (h : constantCoeff ฯˆ โ‰  0) :
              ฯ† = ฯˆโปยน โ†” ฯ† * ฯˆ = 1
              theorem PowerSeries.inv_eq_iff_mul_eq_one {k : Type u_2} [Field k] {ฯ† ฯˆ : PowerSeries k} (h : constantCoeff ฯˆ โ‰  0) :
              ฯˆโปยน = ฯ† โ†” ฯ† * ฯˆ = 1
              theorem PowerSeries.mul_inv_rev {k : Type u_2} [Field k] (ฯ† ฯˆ : PowerSeries k) :
              def PowerSeries.firstUnitCoeff {k : Type u_2} [Field k] {f : PowerSeries k} (hf : f โ‰  0) :

              firstUnitCoeff is the non-zero coefficient whose index is f.order, seen as a unit of the field. It is obtained using divided_by_X_pow_order, defined in PowerSeries.Order.

              Equations
                Instances For

                  Inv_divided_by_X_pow_order is the inverse of the element obtained by diving a non-zero power series by the largest power of X dividing it. Useful to create a term of type Units, done in Unit_divided_by_X_pow_order

                  Equations
                    Instances For

                      Unit_of_divided_by_X_pow_order is the unit power series obtained by dividing a non-zero power series by the largest power of X that divides it.

                      Equations
                        Instances For

                          The maximal ideal of kโŸฆXโŸง is generated by X.

                          The ring isomorphism between the residue field of the ring of power series valued in a field K and K itself.

                          Equations
                            Instances For