Documentation

Mathlib.RingTheory.HahnSeries.Summable

Summable families of Hahn Series #

We introduce a notion of formal summability for families of Hahn series, and define a formal sum function. This theory is applied to characterize invertible Hahn series whose coefficients are in a commutative domain.

Main Definitions #

Main results #

TODO #

References #

structure HahnSeries.SummableFamily (ฮ“ : Type u_8) (R : Type u_9) [PartialOrder ฮ“] [AddCommMonoid R] (ฮฑ : Type u_7) :
Type (max (max u_7 u_8) u_9)

A family of Hahn series whose formal coefficient-wise sum is a Hahn series. For each coefficient of the sum to be well-defined, we require that only finitely many series are nonzero at any given coefficient. For the formal sum to be a Hahn series, we require that the union of the supports of the constituent series is partially well-ordered.

  • toFun : ฮฑ โ†’ HahnSeries ฮ“ R

    A parametrized family of Hahn series.

  • isPWO_iUnion_support' : (โ‹ƒ (a : ฮฑ), (self.toFun a).support).IsPWO
  • finite_co_support' (g : ฮ“) : {a : ฮฑ | (self.toFun a).coeff g โ‰  0}.Finite
Instances For
    @[implicit_reducible]
    instance HahnSeries.SummableFamily.instFunLike {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] :
    FunLike (SummableFamily ฮ“ R ฮฑ) ฮฑ (HahnSeries ฮ“ R)
    @[simp]
    theorem HahnSeries.SummableFamily.coe_mk {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] (toFun : ฮฑ โ†’ HahnSeries ฮ“ R) (h1 : (โ‹ƒ (a : ฮฑ), (toFun a).support).IsPWO) (h2 : โˆ€ (g : ฮ“), {a : ฮฑ | (toFun a).coeff g โ‰  0}.Finite) :
    โ‡‘{ toFun := toFun, isPWO_iUnion_support' := h1, finite_co_support' := h2 } = toFun
    theorem HahnSeries.SummableFamily.isPWO_iUnion_support {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) :
    (โ‹ƒ (a : ฮฑ), (s a).support).IsPWO
    theorem HahnSeries.SummableFamily.finite_co_support {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) (g : ฮ“) :
    Function.HasFiniteSupport fun (a : ฮฑ) => (s a).coeff g
    theorem HahnSeries.SummableFamily.coe_injective {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] :
    Function.Injective DFunLike.coe
    theorem HahnSeries.SummableFamily.ext {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {s t : SummableFamily ฮ“ R ฮฑ} (h : โˆ€ (a : ฮฑ), s a = t a) :
    s = t
    theorem HahnSeries.SummableFamily.ext_iff {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {s t : SummableFamily ฮ“ R ฮฑ} :
    s = t โ†” โˆ€ (a : ฮฑ), s a = t a
    @[implicit_reducible]
    instance HahnSeries.SummableFamily.instAdd {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] :
    Add (SummableFamily ฮ“ R ฮฑ)
    @[implicit_reducible]
    instance HahnSeries.SummableFamily.instZero {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] :
    Zero (SummableFamily ฮ“ R ฮฑ)
    @[implicit_reducible]
    instance HahnSeries.SummableFamily.instInhabited {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] :
    Inhabited (SummableFamily ฮ“ R ฮฑ)
    @[simp]
    theorem HahnSeries.SummableFamily.coe_add {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] (s t : SummableFamily ฮ“ R ฮฑ) :
    โ‡‘(s + t) = โ‡‘s + โ‡‘t
    theorem HahnSeries.SummableFamily.add_apply {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {s t : SummableFamily ฮ“ R ฮฑ} {a : ฮฑ} :
    (s + t) a = s a + t a
    @[simp]
    theorem HahnSeries.SummableFamily.coe_zero {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] :
    โ‡‘0 = 0
    theorem HahnSeries.SummableFamily.zero_apply {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {a : ฮฑ} :
    0 a = 0
    @[implicit_reducible]
    instance HahnSeries.SummableFamily.instSMul {ฮ“ : Type u_1} {R : Type u_3} {ฮฒ : Type u_6} [PartialOrder ฮ“] [AddCommMonoid R] {M : Type u_7} [SMulZeroClass M R] :
    SMul M (SummableFamily ฮ“ R ฮฒ)
    @[simp]
    theorem HahnSeries.SummableFamily.coe_smul' {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {M : Type u_7} [SMulZeroClass M R] (m : M) (s : SummableFamily ฮ“ R ฮฑ) :
    โ‡‘(m โ€ข s) = m โ€ข โ‡‘s
    theorem HahnSeries.SummableFamily.smul_apply' {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {M : Type u_7} [SMulZeroClass M R] (m : M) (s : SummableFamily ฮ“ R ฮฑ) (a : ฮฑ) :
    (m โ€ข s) a = m โ€ข s a
    @[implicit_reducible]
    instance HahnSeries.SummableFamily.instAddCommMonoid {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] :
    AddCommMonoid (SummableFamily ฮ“ R ฮฑ)
    noncomputable def HahnSeries.SummableFamily.coeff {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) (g : ฮ“) :

    The coefficient function of a summable family, as a finsupp on the parameter type.

    Instances For
      @[simp]
      theorem HahnSeries.SummableFamily.coeff_support {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) (g : ฮ“) :
      @[simp]
      theorem HahnSeries.SummableFamily.coeff_apply {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) (g : ฮ“) (a : ฮฑ) :
      (s.coeff g) a = (s a).coeff g
      @[simp]
      theorem HahnSeries.SummableFamily.coeff_def {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) (a : ฮฑ) (g : ฮ“) :
      (s.coeff g) a = (s a).coeff g
      noncomputable def HahnSeries.SummableFamily.hsum {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) :
      HahnSeries ฮ“ R

      The infinite sum of a SummableFamily of Hahn series.

      Instances For
        @[simp]
        theorem HahnSeries.SummableFamily.coeff_hsum {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {s : SummableFamily ฮ“ R ฮฑ} {g : ฮ“} :
        s.hsum.coeff g = โˆ‘แถ  (i : ฮฑ), (s i).coeff g
        @[simp]
        theorem HahnSeries.SummableFamily.hsum_zero {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] :
        hsum 0 = 0
        theorem HahnSeries.SummableFamily.support_hsum_subset {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {s : SummableFamily ฮ“ R ฮฑ} :
        s.hsum.support โІ โ‹ƒ (a : ฮฑ), (s a).support
        @[simp]
        theorem HahnSeries.SummableFamily.hsum_add {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {s t : SummableFamily ฮ“ R ฮฑ} :
        (s + t).hsum = s.hsum + t.hsum
        theorem HahnSeries.SummableFamily.coeff_hsum_eq_sum_of_subset {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {s : SummableFamily ฮ“ R ฮฑ} {g : ฮ“} {t : Finset ฮฑ} (h : {a : ฮฑ | (s a).coeff g โ‰  0} โІ โ†‘t) :
        s.hsum.coeff g = โˆ‘ i โˆˆ t, (s i).coeff g
        theorem HahnSeries.SummableFamily.coeff_hsum_eq_sum {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {s : SummableFamily ฮ“ R ฮฑ} {g : ฮ“} :
        s.hsum.coeff g = โˆ‘ i โˆˆ (s.coeff g).support, (s i).coeff g
        def HahnSeries.SummableFamily.single {ฮ“ : Type u_1} {R : Type u_3} [PartialOrder ฮ“] [AddCommMonoid R] {ฮน : Type u_7} [DecidableEq ฮน] (i : ฮน) (x : HahnSeries ฮ“ R) :
        SummableFamily ฮ“ R ฮน

        The summable family made of a single Hahn series.

        Instances For
          @[simp]
          theorem HahnSeries.SummableFamily.single_toFun {ฮ“ : Type u_1} {R : Type u_3} [PartialOrder ฮ“] [AddCommMonoid R] {ฮน : Type u_7} [DecidableEq ฮน] (i : ฮน) (x : HahnSeries ฮ“ R) (j : ฮน) :
          (single i x) j = Pi.single i x j
          @[simp]
          theorem HahnSeries.SummableFamily.hsum_single {ฮ“ : Type u_1} {R : Type u_3} [PartialOrder ฮ“] [AddCommMonoid R] {ฮน : Type u_7} [DecidableEq ฮน] (i : ฮน) (x : HahnSeries ฮ“ R) :
          (single i x).hsum = x
          def HahnSeries.SummableFamily.const {ฮ“ : Type u_1} {R : Type u_3} [PartialOrder ฮ“] [AddCommMonoid R] (ฮน : Type u_7) [Finite ฮน] (x : HahnSeries ฮ“ R) :
          SummableFamily ฮ“ R ฮน

          The summable family made of a constant Hahn series.

          Instances For
            @[simp]
            theorem HahnSeries.SummableFamily.const_toFun {ฮ“ : Type u_1} {R : Type u_3} [PartialOrder ฮ“] [AddCommMonoid R] (ฮน : Type u_7) [Finite ฮน] (x : HahnSeries ฮ“ R) (xโœ : ฮน) :
            (const ฮน x) xโœ = x
            @[simp]
            theorem HahnSeries.SummableFamily.hsum_unique {ฮ“ : Type u_1} {R : Type u_3} [PartialOrder ฮ“] [AddCommMonoid R] {ฮน : Type u_7} [Unique ฮน] (x : SummableFamily ฮ“ R ฮน) :
            def HahnSeries.SummableFamily.Equiv {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [AddCommMonoid R] (e : ฮฑ โ‰ƒ ฮฒ) (s : SummableFamily ฮ“ R ฮฑ) :
            SummableFamily ฮ“ R ฮฒ

            A summable family induced by an equivalence of the parametrizing type.

            Instances For
              @[simp]
              theorem HahnSeries.SummableFamily.Equiv_toFun {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [AddCommMonoid R] (e : ฮฑ โ‰ƒ ฮฒ) (s : SummableFamily ฮ“ R ฮฑ) (b : ฮฒ) :
              (Equiv e s) b = s (e.symm b)
              @[simp]
              theorem HahnSeries.SummableFamily.hsum_equiv {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [AddCommMonoid R] (e : ฮฑ โ‰ƒ ฮฒ) (s : SummableFamily ฮ“ R ฮฑ) :
              (Equiv e s).hsum = s.hsum
              def HahnSeries.SummableFamily.smulFamily {ฮ“ : Type u_1} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] [AddCommMonoid V] [SMulWithZero R V] (f : ฮฑ โ†’ R) (s : SummableFamily ฮ“ V ฮฑ) :
              SummableFamily ฮ“ V ฮฑ

              The summable family given by multiplying every series in a summable family by a scalar.

              Instances For
                @[simp]
                theorem HahnSeries.SummableFamily.smulFamily_toFun {ฮ“ : Type u_1} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] [AddCommMonoid V] [SMulWithZero R V] (f : ฮฑ โ†’ R) (s : SummableFamily ฮ“ V ฮฑ) (a : ฮฑ) :
                (smulFamily f s) a = f a โ€ข s a
                theorem HahnSeries.SummableFamily.hsum_smulFamily {ฮ“ : Type u_1} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] [AddCommMonoid V] [SMulWithZero R V] (f : ฮฑ โ†’ R) (s : SummableFamily ฮ“ V ฮฑ) (g : ฮ“) :
                (smulFamily f s).hsum.coeff g = โˆ‘แถ  (i : ฮฑ), f i โ€ข (s i).coeff g
                theorem HahnSeries.SummableFamily.le_hsum_support_mem {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {s : SummableFamily ฮ“ R ฮฑ} {g g' : ฮ“} (hg : โˆ€ (b : ฮฑ), โˆ€ g' โˆˆ (s b).support, g โ‰ค g') (hg' : g' โˆˆ s.hsum.support) :
                theorem HahnSeries.SummableFamily.hsum_orderTop_of_le {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {s : SummableFamily ฮ“ R ฮฑ} {g : ฮ“} {a : ฮฑ} (ha : โ†‘g = (s a).orderTop) (hg : โˆ€ (b : ฮฑ), โˆ€ g' โˆˆ (s b).support, g โ‰ค g') (hna : โˆ€ (b : ฮฑ), b โ‰  a โ†’ (s b).coeff g = 0) :
                s.hsum.orderTop = โ†‘g
                theorem HahnSeries.SummableFamily.hsum_leadingCoeff_of_le {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {s : SummableFamily ฮ“ R ฮฑ} {g : ฮ“} {a : ฮฑ} (ha : โ†‘g = (s a).orderTop) (hg : โˆ€ (b : ฮฑ), โˆ€ g' โˆˆ (s b).support, g โ‰ค g') (hna : โˆ€ (b : ฮฑ), b โ‰  a โ†’ (s b).coeff g = 0) :
                s.hsum.leadingCoeff = (s a).coeff g
                @[implicit_reducible]
                instance HahnSeries.SummableFamily.instNeg {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommGroup R] :
                Neg (SummableFamily ฮ“ R ฮฑ)
                @[simp]
                theorem HahnSeries.SummableFamily.coe_neg {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommGroup R] (s : SummableFamily ฮ“ R ฮฑ) :
                โ‡‘(-s) = -โ‡‘s
                theorem HahnSeries.SummableFamily.neg_apply {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommGroup R] {s : SummableFamily ฮ“ R ฮฑ} {a : ฮฑ} :
                (-s) a = -s a
                @[implicit_reducible]
                instance HahnSeries.SummableFamily.instSub {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommGroup R] :
                Sub (SummableFamily ฮ“ R ฮฑ)
                @[simp]
                theorem HahnSeries.SummableFamily.coe_sub {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommGroup R] (s t : SummableFamily ฮ“ R ฮฑ) :
                โ‡‘(s - t) = โ‡‘s - โ‡‘t
                theorem HahnSeries.SummableFamily.sub_apply {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommGroup R] {s t : SummableFamily ฮ“ R ฮฑ} {a : ฮฑ} :
                (s - t) a = s a - t a
                @[implicit_reducible]
                instance HahnSeries.SummableFamily.instAddCommGroup {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommGroup R] :
                AddCommGroup (SummableFamily ฮ“ R ฮฑ)
                theorem HahnSeries.SummableFamily.smul_support_subset_prod {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [AddCommMonoid V] [AddCommMonoid R] [SMulWithZero R V] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“' V ฮฒ) (gh : ฮ“ ร— ฮ“') :
                (Function.support fun (i : ฮฑ ร— ฮฒ) => (s i.1).coeff gh.1 โ€ข (t i.2).coeff gh.2) โІ โ†‘โ‹ฏ.toFinset
                theorem HahnSeries.SummableFamily.hasFiniteSupport_smul {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [AddCommMonoid V] [AddCommMonoid R] [SMulWithZero R V] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“' V ฮฒ) (gh : ฮ“ ร— ฮ“') :
                Function.HasFiniteSupport fun (i : ฮฑ ร— ฮฒ) => (s i.1).coeff gh.1 โ€ข (t i.2).coeff gh.2
                @[deprecated HahnSeries.SummableFamily.hasFiniteSupport_smul (since := "2026-03-03")]
                theorem HahnSeries.SummableFamily.smul_support_finite {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [AddCommMonoid V] [AddCommMonoid R] [SMulWithZero R V] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“' V ฮฒ) (gh : ฮ“ ร— ฮ“') :
                Function.HasFiniteSupport fun (i : ฮฑ ร— ฮฒ) => (s i.1).coeff gh.1 โ€ข (t i.2).coeff gh.2

                Alias of HahnSeries.SummableFamily.hasFiniteSupport_smul.

                theorem HahnSeries.SummableFamily.isPWO_iUnion_support_prod_smul {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [AddCommMonoid V] [AddCommMonoid R] [SMulWithZero R V] [VAdd ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] {s : ฮฑ โ†’ HahnSeries ฮ“ R} {t : ฮฒ โ†’ HahnSeries ฮ“' V} (hs : (โ‹ƒ (a : ฮฑ), (s a).support).IsPWO) (ht : (โ‹ƒ (b : ฮฒ), (t b).support).IsPWO) :
                (โ‹ƒ (a : ฮฑ ร— ฮฒ), ((fun (a : ฮฑ ร— ฮฒ) => (HahnModule.of R).symm (s a.1 โ€ข (HahnModule.of R) (t a.2))) a).support).IsPWO
                theorem HahnSeries.SummableFamily.finite_co_support_prod_smul {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [AddCommMonoid V] [AddCommMonoid R] [SMulWithZero R V] [VAdd ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“' V ฮฒ) (g : ฮ“') :
                Finite โ†‘{ab : ฮฑ ร— ฮฒ | ((fun (ab : ฮฑ ร— ฮฒ) => (HahnModule.of R).symm (s ab.1 โ€ข (HahnModule.of R) (t ab.2))) ab).coeff g โ‰  0}
                noncomputable def HahnSeries.SummableFamily.smul {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [AddCommMonoid V] [AddCommMonoid R] [SMulWithZero R V] [VAdd ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“' V ฮฒ) :
                SummableFamily ฮ“' V (ฮฑ ร— ฮฒ)

                An elementwise scalar multiplication of one summable family on another.

                Instances For
                  @[simp]
                  theorem HahnSeries.SummableFamily.smul_toFun {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [AddCommMonoid V] [AddCommMonoid R] [SMulWithZero R V] [VAdd ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“' V ฮฒ) (ab : ฮฑ ร— ฮฒ) :
                  (s.smul t) ab = (HahnModule.of R).symm (s ab.1 โ€ข (HahnModule.of R) (t ab.2))
                  theorem HahnSeries.SummableFamily.sum_vAddAntidiagonal_eq {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [AddCommMonoid V] [AddCommMonoid R] [SMulWithZero R V] [VAdd ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“' V ฮฒ) (g : ฮ“') (a : ฮฑ ร— ฮฒ) :
                  โˆ‘ x โˆˆ Finset.VAddAntidiagonal โ‹ฏ โ‹ฏ g, (s a.1).coeff x.1 โ€ข (t a.2).coeff x.2 = โˆ‘ x โˆˆ Finset.VAddAntidiagonal โ‹ฏ โ‹ฏ g, (s a.1).coeff x.1 โ€ข (t a.2).coeff x.2
                  theorem HahnSeries.SummableFamily.coeff_smul {ฮ“ : Type u_1} {ฮ“' : Type u_2} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [VAdd ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] {R : Type u_7} {V : Type u_8} [Semiring R] [AddCommMonoid V] [Module R V] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“' V ฮฒ) (g : ฮ“') :
                  (s.smul t).hsum.coeff g = โˆ‘ gh โˆˆ Finset.VAddAntidiagonal โ‹ฏ โ‹ฏ g, s.hsum.coeff gh.1 โ€ข t.hsum.coeff gh.2
                  theorem HahnSeries.SummableFamily.smul_hsum {ฮ“ : Type u_1} {ฮ“' : Type u_2} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [VAdd ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] {R : Type u_7} {V : Type u_8} [Semiring R] [AddCommMonoid V] [Module R V] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“' V ฮฒ) :
                  (s.smul t).hsum = (HahnModule.of R).symm (s.hsum โ€ข (HahnModule.of R) t.hsum)
                  @[implicit_reducible]
                  noncomputable instance HahnSeries.SummableFamily.instSMul_1 {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [AddCommMonoid V] [AddCommMonoid R] [SMulWithZero R V] [VAdd ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] :
                  SMul (HahnSeries ฮ“ R) (SummableFamily ฮ“' V ฮฒ)
                  theorem HahnSeries.SummableFamily.smul_eq {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฒ : Type u_6} [PartialOrder ฮ“] [PartialOrder ฮ“'] [AddCommMonoid V] [AddCommMonoid R] [SMulWithZero R V] [VAdd ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] {x : HahnSeries ฮ“ R} {t : SummableFamily ฮ“' V ฮฒ} :
                  x โ€ข t = Equiv (Equiv.punitProd ฮฒ) ((const Unit x).smul t)
                  @[simp]
                  theorem HahnSeries.SummableFamily.smul_apply {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} [PartialOrder ฮ“] [PartialOrder ฮ“'] [AddCommMonoid V] [AddCommMonoid R] [SMulWithZero R V] [VAdd ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] {x : HahnSeries ฮ“ R} {s : SummableFamily ฮ“' V ฮฑ} {a : ฮฑ} :
                  (x โ€ข s) a = (HahnModule.of R).symm (x โ€ข (HahnModule.of R) (s a))
                  @[simp]
                  theorem HahnSeries.SummableFamily.hsum_smul_module {ฮ“ : Type u_1} {ฮ“' : Type u_2} {ฮฑ : Type u_5} [PartialOrder ฮ“] [PartialOrder ฮ“'] [VAdd ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] {R : Type u_7} {V : Type u_8} [Semiring R] [AddCommMonoid V] [Module R V] {x : HahnSeries ฮ“ R} {s : SummableFamily ฮ“' V ฮฑ} :
                  (x โ€ข s).hsum = (HahnModule.of R).symm (x โ€ข (HahnModule.of R) s.hsum)
                  @[implicit_reducible]
                  noncomputable instance HahnSeries.SummableFamily.instModule {ฮ“ : Type u_1} {ฮ“' : Type u_2} {R : Type u_3} {V : Type u_4} {ฮฑ : Type u_5} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [PartialOrder ฮ“'] [AddAction ฮ“ ฮ“'] [IsOrderedCancelVAdd ฮ“ ฮ“'] [Semiring R] [AddCommMonoid V] [Module R V] :
                  Module (HahnSeries ฮ“ R) (SummableFamily ฮ“' V ฮฑ)
                  theorem HahnSeries.SummableFamily.hsum_smul {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] {x : HahnSeries ฮ“ R} {s : SummableFamily ฮ“ R ฮฑ} :
                  (x โ€ข s).hsum = x * s.hsum
                  noncomputable def HahnSeries.SummableFamily.lsum {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] :

                  The summation of a summable_family as a LinearMap.

                  Instances For
                    @[simp]
                    theorem HahnSeries.SummableFamily.lsum_apply {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] (s : SummableFamily ฮ“ R ฮฑ) :
                    lsum s = s.hsum
                    @[simp]
                    theorem HahnSeries.SummableFamily.hsum_sub {ฮ“ : Type u_1} {ฮฑ : Type u_5} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] {R : Type u_7} [Ring R] {s t : SummableFamily ฮ“ R ฮฑ} :
                    (s - t).hsum = s.hsum - t.hsum
                    theorem HahnSeries.SummableFamily.isPWO_iUnion_support_prod_mul {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] {s : ฮฑ โ†’ HahnSeries ฮ“ R} {t : ฮฒ โ†’ HahnSeries ฮ“ R} (hs : (โ‹ƒ (a : ฮฑ), (s a).support).IsPWO) (ht : (โ‹ƒ (b : ฮฒ), (t b).support).IsPWO) :
                    (โ‹ƒ (a : ฮฑ ร— ฮฒ), ((fun (a : ฮฑ ร— ฮฒ) => s a.1 * t a.2) a).support).IsPWO
                    theorem HahnSeries.SummableFamily.finite_co_support_prod_mul {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“ R ฮฒ) (g : ฮ“) :
                    Finite โ†‘{a : ฮฑ ร— ฮฒ | ((fun (a : ฮฑ ร— ฮฒ) => s a.1 * t a.2) a).coeff g โ‰  0}
                    noncomputable def HahnSeries.SummableFamily.mul {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“ R ฮฒ) :
                    SummableFamily ฮ“ R (ฮฑ ร— ฮฒ)

                    A summable family given by pointwise multiplication of a pair of summable families.

                    Instances For
                      @[simp]
                      theorem HahnSeries.SummableFamily.mul_toFun {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“ R ฮฒ) (a : ฮฑ ร— ฮฒ) :
                      (s.mul t) a = s a.1 * t a.2
                      theorem HahnSeries.SummableFamily.mul_eq_smul {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“ R ฮฒ) :
                      s.mul t = s.smul t
                      theorem HahnSeries.SummableFamily.coeff_hsum_mul {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“ R ฮฒ) (g : ฮ“) :
                      (s.mul t).hsum.coeff g = โˆ‘ gh โˆˆ Finset.addAntidiagonal โ‹ฏ โ‹ฏ g, s.hsum.coeff gh.1 * t.hsum.coeff gh.2
                      theorem HahnSeries.SummableFamily.hsum_mul {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] (s : SummableFamily ฮ“ R ฮฑ) (t : SummableFamily ฮ“ R ฮฒ) :
                      (s.mul t).hsum = s.hsum * t.hsum
                      def HahnSeries.SummableFamily.ofFinsupp {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] (f : ฮฑ โ†’โ‚€ HahnSeries ฮ“ R) :
                      SummableFamily ฮ“ R ฮฑ

                      A family with only finitely many nonzero elements is summable.

                      Instances For
                        @[simp]
                        theorem HahnSeries.SummableFamily.coe_ofFinsupp {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {f : ฮฑ โ†’โ‚€ HahnSeries ฮ“ R} :
                        โ‡‘(ofFinsupp f) = โ‡‘f
                        @[simp]
                        theorem HahnSeries.SummableFamily.hsum_ofFinsupp {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} [PartialOrder ฮ“] [AddCommMonoid R] {f : ฮฑ โ†’โ‚€ HahnSeries ฮ“ R} :
                        (ofFinsupp f).hsum = f.sum fun (x : ฮฑ) => id
                        noncomputable def HahnSeries.SummableFamily.embDomain {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) (f : ฮฑ โ†ช ฮฒ) :
                        SummableFamily ฮ“ R ฮฒ

                        A summable family can be reindexed by an embedding without changing its sum.

                        Instances For
                          theorem HahnSeries.SummableFamily.embDomain_apply {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) (f : ฮฑ โ†ช ฮฒ) {b : ฮฒ} :
                          (s.embDomain f) b = if h : b โˆˆ Set.range โ‡‘f then s (Classical.choose h) else 0
                          @[simp]
                          theorem HahnSeries.SummableFamily.embDomain_image {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) (f : ฮฑ โ†ช ฮฒ) {a : ฮฑ} :
                          (s.embDomain f) (f a) = s a
                          @[simp]
                          theorem HahnSeries.SummableFamily.embDomain_notin_range {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) (f : ฮฑ โ†ช ฮฒ) {b : ฮฒ} (h : b โˆ‰ Set.range โ‡‘f) :
                          (s.embDomain f) b = 0
                          @[simp]
                          theorem HahnSeries.SummableFamily.hsum_embDomain {ฮ“ : Type u_1} {R : Type u_3} {ฮฑ : Type u_5} {ฮฒ : Type u_6} [PartialOrder ฮ“] [AddCommMonoid R] (s : SummableFamily ฮ“ R ฮฑ) (f : ฮฑ โ†ช ฮฒ) :
                          (s.embDomain f).hsum = s.hsum
                          theorem HahnSeries.SummableFamily.support_pow_subset_closure {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] (x : HahnSeries ฮ“ R) (n : โ„•) :
                          (x ^ n).support โІ โ†‘(AddSubmonoid.closure x.support)
                          theorem HahnSeries.SummableFamily.isPWO_iUnion_support_powers {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] {x : HahnSeries ฮ“ R} (hx : 0 โ‰ค x.order) :
                          (โ‹ƒ (n : โ„•), (x ^ n).support).IsPWO
                          theorem HahnSeries.SummableFamily.co_support_zero {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [PartialOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [Semiring R] (g : ฮ“) :
                          {a : โ„• | ยฌ(0 ^ a).coeff g = 0} โІ {0}
                          theorem HahnSeries.SummableFamily.pow_finite_co_support {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] {x : HahnSeries ฮ“ R} (hx : 0 < x.orderTop) (g : ฮ“) :
                          {a : โ„• | ((fun (n : โ„•) => x ^ n) a).coeff g โ‰  0}.Finite
                          noncomputable def HahnSeries.SummableFamily.powers {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] (x : HahnSeries ฮ“ R) :
                          SummableFamily ฮ“ R โ„•

                          A summable family of powers of a Hahn series x. If x has non-positive orderTop, then return a junk value given by pretending x = 0.

                          Instances For
                            @[simp]
                            theorem HahnSeries.SummableFamily.powers_toFun {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] (x : HahnSeries ฮ“ R) (n : โ„•) :
                            (powers x) n = (if 0 < x.orderTop then x else 0) ^ n
                            theorem HahnSeries.SummableFamily.powers_of_orderTop_pos {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] {x : HahnSeries ฮ“ R} (hx : 0 < x.orderTop) (n : โ„•) :
                            (powers x) n = x ^ n
                            @[simp]
                            theorem HahnSeries.SummableFamily.coe_powers {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] {x : HahnSeries ฮ“ R} (hx : 0 < x.orderTop) :
                            โ‡‘(powers x) = HPow.hPow x
                            theorem HahnSeries.SummableFamily.embDomain_succ_smul_powers {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] {x : HahnSeries ฮ“ R} (hx : 0 < x.orderTop) :
                            (x โ€ข powers x).embDomain { toFun := Nat.succ, inj' := Nat.succ_injective } = powers x - ofFinsupp funโ‚€ | 0 => 1
                            theorem HahnSeries.SummableFamily.one_sub_self_mul_hsum_powers {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] {x : HahnSeries ฮ“ R} (hx : 0 < x.orderTop) :
                            (1 - x) * (powers x).hsum = 1
                            theorem HahnSeries.one_minus_single_neg_mul {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] {x y : HahnSeries ฮ“ R} {r : R} (hr : r * x.leadingCoeff = 1) (hxy : x = y + (single x.order) x.leadingCoeff) (oinv : ฮ“) (hxo : oinv + x.order = 0) :
                            1 - (single oinv) r * x = -((single oinv) r * y)
                            theorem HahnSeries.unit_aux {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] (x : HahnSeries ฮ“ R) {r : R} (hr : r * x.leadingCoeff = 1) (oinv : ฮ“) (hxo : oinv + x.order = 0) :
                            0 < (1 - (single oinv) r * x).orderTop
                            theorem HahnSeries.isUnit_of_orderTop_pos {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] {x : HahnSeries ฮ“ R} (h : 0 < (x - 1).orderTop) :
                            noncomputable def HahnSeries.toOrderTopSubOnePos {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] {x : HahnSeries ฮ“ R} (h : 0 < (x - 1).orderTop) :
                            โ†ฅ(orderTopSubOnePos ฮ“ R)

                            Make an element of orderTopSubOnePos

                            Instances For
                              @[simp]
                              theorem HahnSeries.val_inv_toOrderTopSubOnePos_coe {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] {x : HahnSeries ฮ“ R} (h : 0 < (x - 1).orderTop) :
                              โ†‘(โ†‘(toOrderTopSubOnePos h))โปยน = โ‹ฏ.unit.inv
                              @[simp]
                              theorem HahnSeries.val_toOrderTopSubOnePos_coe {ฮ“ : Type u_1} {R : Type u_3} [AddCommMonoid ฮ“] [LinearOrder ฮ“] [IsOrderedCancelAddMonoid ฮ“] [CommRing R] {x : HahnSeries ฮ“ R} (h : 0 < (x - 1).orderTop) :
                              โ†‘โ†‘(toOrderTopSubOnePos h) = x
                              theorem HahnSeries.isUnit_iff {ฮ“ : Type u_1} {R : Type u_3} [AddCommGroup ฮ“] [LinearOrder ฮ“] [IsOrderedAddMonoid ฮ“] [CommRing R] [IsDomain R] {x : HahnSeries ฮ“ R} :
                              @[implicit_reducible]
                              noncomputable instance HahnSeries.instDivInvMonoid {ฮ“ : Type u_1} {R : Type u_3} [AddCommGroup ฮ“] [LinearOrder ฮ“] [IsOrderedAddMonoid ฮ“] [Field R] :
                              @[simp]
                              theorem HahnSeries.inv_single {ฮ“ : Type u_1} {R : Type u_3} [AddCommGroup ฮ“] [LinearOrder ฮ“] [IsOrderedAddMonoid ฮ“] [Field R] (a : ฮ“) (r : R) :
                              @[simp]
                              theorem HahnSeries.single_div_single {ฮ“ : Type u_1} {R : Type u_3} [AddCommGroup ฮ“] [LinearOrder ฮ“] [IsOrderedAddMonoid ฮ“] [Field R] (a b : ฮ“) (r s : R) :
                              (single a) r / (single b) s = (single (a - b)) (r / s)
                              @[implicit_reducible]
                              noncomputable instance HahnSeries.instField {ฮ“ : Type u_1} {R : Type u_3} [AddCommGroup ฮ“] [LinearOrder ฮ“] [IsOrderedAddMonoid ฮ“] [Field R] :
                              Field (HahnSeries ฮ“ R)
                              theorem HahnSeries.single_zero_ofScientific {ฮ“ : Type u_1} {R : Type u_3} [AddCommGroup ฮ“] [LinearOrder ฮ“] [IsOrderedAddMonoid ฮ“] [Field R] (m : โ„•) (e : Bool) (s : โ„•) :
                              (single 0) (OfScientific.ofScientific m e s) = OfScientific.ofScientific m e s