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 #

theorem HahnSeries.isPWO_iUnion_support_powers {Γ : Type u_1} {R : Type u_3} [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R] {x : HahnSeries Γ R} (hx : 0 < x.orderTop) :
(⋃ (n : ), (x ^ n).support).IsPWO
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
    instance HahnSeries.SummableFamily.instFunLike {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] :
    Equations
    • HahnSeries.SummableFamily.instFunLike = { coe := HahnSeries.SummableFamily.toFun, coe_injective' := }
    theorem HahnSeries.SummableFamily.isPWO_iUnion_support {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] (s : HahnSeries.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 : HahnSeries.SummableFamily Γ R α) (g : Γ) :
    (Function.support fun (a : α) => (s a).coeff g).Finite
    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 : HahnSeries.SummableFamily Γ R α} (h : ∀ (a : α), s a = t a) :
    s = t
    instance HahnSeries.SummableFamily.instAdd {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] :
    Equations
    • HahnSeries.SummableFamily.instAdd = { add := fun (x y : HahnSeries.SummableFamily Γ R α) => { toFun := x + y, isPWO_iUnion_support' := , finite_co_support' := } }
    instance HahnSeries.SummableFamily.instZero {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] :
    Equations
    • HahnSeries.SummableFamily.instZero = { zero := { toFun := 0, isPWO_iUnion_support' := , finite_co_support' := } }
    Equations
    • HahnSeries.SummableFamily.instInhabited = { default := 0 }
    @[simp]
    theorem HahnSeries.SummableFamily.coe_add {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] {s t : HahnSeries.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 : HahnSeries.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
    Equations
    def HahnSeries.SummableFamily.coeff {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] (s : HahnSeries.SummableFamily Γ R α) (g : Γ) :
    α →₀ R

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

    Equations
    • s.coeff g = { support := .toFinset, toFun := fun (a : α) => (s a).coeff g, mem_support_toFun := }
    Instances For
      @[simp]
      theorem HahnSeries.SummableFamily.coeff_support {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] (s : HahnSeries.SummableFamily Γ R α) (g : Γ) :
      (s.coeff g).support = .toFinset
      @[simp]
      theorem HahnSeries.SummableFamily.coeff_toFun {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] (s : HahnSeries.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 : HahnSeries.SummableFamily Γ R α) (a : α) (g : Γ) :
      (s.coeff g) a = (s a).coeff g
      def HahnSeries.SummableFamily.hsum {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] (s : HahnSeries.SummableFamily Γ R α) :

      The infinite sum of a SummableFamily of Hahn series.

      Equations
      • s.hsum = { coeff := fun (g : Γ) => ∑ᶠ (i : α), (s i).coeff g, isPWO_support' := }
      Instances For
        @[simp]
        theorem HahnSeries.SummableFamily.hsum_coeff {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] {s : HahnSeries.SummableFamily Γ R α} {g : Γ} :
        s.hsum.coeff g = ∑ᶠ (i : α), (s i).coeff g
        theorem HahnSeries.SummableFamily.support_hsum_subset {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] {s : HahnSeries.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 : HahnSeries.SummableFamily Γ R α} :
        (s + t).hsum = s.hsum + t.hsum
        theorem HahnSeries.SummableFamily.hsum_coeff_eq_sum_of_subset {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] {s : HahnSeries.SummableFamily Γ R α} {g : Γ} {t : Finset α} (h : {a : α | (s a).coeff g 0} t) :
        s.hsum.coeff g = it, (s i).coeff g
        theorem HahnSeries.SummableFamily.hsum_coeff_eq_sum {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommMonoid R] {s : HahnSeries.SummableFamily Γ R α} {g : Γ} :
        s.hsum.coeff g = i(s.coeff g).support, (s i).coeff g

        The summable family made of a single Hahn series.

        Equations
        Instances For
          @[simp]
          def HahnSeries.SummableFamily.Equiv {Γ : Type u_1} {R : Type u_3} {α : Type u_5} {β : Type u_6} [PartialOrder Γ] [AddCommMonoid R] (e : α β) (s : HahnSeries.SummableFamily Γ R α) :

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

          Equations
          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 : HahnSeries.SummableFamily Γ R α) (b : β) :
            (HahnSeries.SummableFamily.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 : HahnSeries.SummableFamily Γ R α) :
            instance HahnSeries.SummableFamily.instNeg {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommGroup R] :
            Equations
            • HahnSeries.SummableFamily.instNeg = { neg := fun (s : HahnSeries.SummableFamily Γ R α) => { toFun := fun (a : α) => -s a, isPWO_iUnion_support' := , finite_co_support' := } }
            Equations
            @[simp]
            theorem HahnSeries.SummableFamily.coe_neg {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommGroup R] {s : HahnSeries.SummableFamily Γ R α} :
            (-s) = -s
            theorem HahnSeries.SummableFamily.neg_apply {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommGroup R] {s : HahnSeries.SummableFamily Γ R α} {a : α} :
            (-s) a = -s a
            @[simp]
            theorem HahnSeries.SummableFamily.coe_sub {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [PartialOrder Γ] [AddCommGroup R] {s t : HahnSeries.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 : HahnSeries.SummableFamily Γ R α} {a : α} :
            (s - t) a = s a - t a
            instance HahnSeries.SummableFamily.instSMulOfSMulWithZero {Γ' : Type u_2} {R : Type u_3} {V : Type u_4} {β : Type u_6} [PartialOrder Γ'] [AddCommMonoid V] [Zero R] [SMulWithZero R V] :
            Equations
            • One or more equations did not get rendered due to their size.
            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 : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ' V β) (gh : Γ × Γ') :
            (Function.support fun (i : α × β) => (s i.1).coeff gh.1 (t i.2).coeff gh.2) .toFinset
            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 : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ' V β) (gh : Γ × Γ') :
            (Function.support fun (i : α × β) => (s i.1).coeff gh.1 (t i.2).coeff gh.2).Finite
            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 : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ' V β) (g : Γ') :
            Finite {ab : α × β | ((fun (ab : α × β) => (HahnModule.of R).symm (s ab.1 (HahnModule.of R) (t ab.2))) ab).coeff g 0}
            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 : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ' V β) :

            An elementwise scalar multiplication of one summable family on another.

            Equations
            • s.smul t = { toFun := fun (ab : α × β) => (HahnModule.of R).symm (s ab.1 (HahnModule.of R) (t ab.2)), isPWO_iUnion_support' := , finite_co_support' := }
            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 : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ' V β) (ab : α × β) :
              (s.smul t) ab = (HahnModule.of R).symm (s ab.1 (HahnModule.of R) (t ab.2))
              @[deprecated HahnSeries.SummableFamily.smul]
              def HahnSeries.SummableFamily.FamilySMul {Γ : 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.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ' V β) :

              Alias of HahnSeries.SummableFamily.smul.


              An elementwise scalar multiplication of one summable family on another.

              Equations
              Instances For
                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 : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ' V β) (g : Γ') (a : α × β) :
                xFinset.VAddAntidiagonal g, (s a.1).coeff x.1 (t a.2).coeff x.2 = xFinset.VAddAntidiagonal g, (s a.1).coeff x.1 (t a.2).coeff x.2
                theorem HahnSeries.SummableFamily.smul_coeff {Γ : 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 : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ' V β) (g : Γ') :
                (s.smul t).hsum.coeff g = ghFinset.VAddAntidiagonal g, s.hsum.coeff gh.1 t.hsum.coeff gh.2
                @[deprecated HahnSeries.SummableFamily.smul_coeff]
                theorem HahnSeries.SummableFamily.family_smul_coeff {Γ : 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 : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ' V β) (g : Γ') :
                (s.smul t).hsum.coeff g = ghFinset.VAddAntidiagonal g, s.hsum.coeff gh.1 t.hsum.coeff gh.2

                Alias of HahnSeries.SummableFamily.smul_coeff.

                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 : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ' V β) :
                (s.smul t).hsum = (HahnModule.of R).symm (s.hsum (HahnModule.of R) t.hsum)
                @[deprecated HahnSeries.SummableFamily.smul_hsum]
                theorem HahnSeries.SummableFamily.hsum_family_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 : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ' V β) :
                (s.smul t).hsum = (HahnModule.of R).symm (s.hsum (HahnModule.of R) t.hsum)

                Alias of HahnSeries.SummableFamily.smul_hsum.

                instance HahnSeries.SummableFamily.instSMulOfSMulWithZero_1 {Γ : Type u_1} {Γ' : Type u_2} {R : Type u_3} {V : Type u_4} {β : Type u_6} [PartialOrder Γ] [PartialOrder Γ'] [AddCommMonoid V] [VAdd Γ Γ'] [IsOrderedCancelVAdd Γ Γ'] [AddCommMonoid R] [SMulWithZero R V] :
                Equations
                • One or more equations did not get rendered due to their size.
                @[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 : HahnSeries.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 : HahnSeries.SummableFamily Γ' V α} :
                (x s).hsum = (HahnModule.of R).symm (x (HahnModule.of R) s.hsum)
                instance HahnSeries.SummableFamily.instModule {Γ : Type u_1} {Γ' : Type u_2} {R : Type u_3} {V : Type u_4} {α : Type u_5} [OrderedCancelAddCommMonoid Γ] [PartialOrder Γ'] [AddAction Γ Γ'] [IsOrderedCancelVAdd Γ Γ'] [Semiring R] [AddCommMonoid V] [Module R V] :
                Equations
                • HahnSeries.SummableFamily.instModule = Module.mk
                theorem HahnSeries.SummableFamily.hsum_smul {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [OrderedCancelAddCommMonoid Γ] [Semiring R] {x : HahnSeries Γ R} {s : HahnSeries.SummableFamily Γ R α} :
                (x s).hsum = x * s.hsum

                The summation of a summable_family as a LinearMap.

                Equations
                • HahnSeries.SummableFamily.lsum = { toFun := HahnSeries.SummableFamily.hsum, map_add' := , map_smul' := }
                Instances For
                  @[simp]
                  theorem HahnSeries.SummableFamily.lsum_apply {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [OrderedCancelAddCommMonoid Γ] [Semiring R] (s : HahnSeries.SummableFamily Γ R α) :
                  HahnSeries.SummableFamily.lsum s = s.hsum
                  @[simp]
                  theorem HahnSeries.SummableFamily.hsum_sub {Γ : Type u_1} {α : Type u_5} [OrderedCancelAddCommMonoid Γ] {R : Type u_7} [Ring R] {s t : HahnSeries.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} [OrderedCancelAddCommMonoid Γ] [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} [OrderedCancelAddCommMonoid Γ] [Semiring R] (s : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ R β) (g : Γ) :
                  Finite {a : α × β | ((fun (a : α × β) => s a.1 * t a.2) a).coeff g 0}
                  def HahnSeries.SummableFamily.mul {Γ : Type u_1} {R : Type u_3} {α : Type u_5} {β : Type u_6} [OrderedCancelAddCommMonoid Γ] [Semiring R] (s : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ R β) :

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

                  Equations
                  • s.mul t = { toFun := fun (a : α × β) => s a.1 * t a.2, isPWO_iUnion_support' := , finite_co_support' := }
                  Instances For
                    @[simp]
                    theorem HahnSeries.SummableFamily.mul_toFun {Γ : Type u_1} {R : Type u_3} {α : Type u_5} {β : Type u_6} [OrderedCancelAddCommMonoid Γ] [Semiring R] (s : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.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} [OrderedCancelAddCommMonoid Γ] [Semiring R] {β : Type u_7} (s : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ R β) :
                    s.mul t = s.smul t
                    theorem HahnSeries.SummableFamily.mul_coeff {Γ : Type u_1} {R : Type u_3} {α : Type u_5} [OrderedCancelAddCommMonoid Γ] [Semiring R] {β : Type u_7} (s : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ R β) (g : Γ) :
                    (s.mul t).hsum.coeff g = ghFinset.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} [OrderedCancelAddCommMonoid Γ] [Semiring R] {β : Type u_7} (s : HahnSeries.SummableFamily Γ R α) (t : HahnSeries.SummableFamily Γ R β) :
                    (s.mul t).hsum = s.hsum * t.hsum
                    def HahnSeries.SummableFamily.ofFinsupp {Γ : Type u_1} {R : Type u_3} [PartialOrder Γ] [AddCommMonoid R] {α : Type u_7} (f : α →₀ HahnSeries Γ R) :

                    A family with only finitely many nonzero elements is summable.

                    Equations
                    Instances For
                      @[simp]
                      @[simp]
                      theorem HahnSeries.SummableFamily.hsum_ofFinsupp {Γ : Type u_1} {R : Type u_3} [PartialOrder Γ] [AddCommMonoid R] {α : Type u_7} {f : α →₀ HahnSeries Γ R} :
                      (HahnSeries.SummableFamily.ofFinsupp f).hsum = f.sum fun (x : α) => id
                      def HahnSeries.SummableFamily.embDomain {Γ : Type u_1} {R : Type u_3} [PartialOrder Γ] [AddCommMonoid R] {α : Type u_7} {β : Type u_8} (s : HahnSeries.SummableFamily Γ R α) (f : α β) :

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

                      Equations
                      • s.embDomain f = { toFun := fun (b : β) => if h : b Set.range f then s (Classical.choose h) else 0, isPWO_iUnion_support' := , finite_co_support' := }
                      Instances For
                        theorem HahnSeries.SummableFamily.embDomain_apply {Γ : Type u_1} {R : Type u_3} [PartialOrder Γ] [AddCommMonoid R] {α : Type u_7} {β : Type u_8} (s : HahnSeries.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} [PartialOrder Γ] [AddCommMonoid R] {α : Type u_7} {β : Type u_8} (s : HahnSeries.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} [PartialOrder Γ] [AddCommMonoid R] {α : Type u_7} {β : Type u_8} (s : HahnSeries.SummableFamily Γ R α) (f : α β) {b : β} (h : bSet.range f) :
                        (s.embDomain f) b = 0
                        @[simp]
                        theorem HahnSeries.SummableFamily.hsum_embDomain {Γ : Type u_1} {R : Type u_3} [PartialOrder Γ] [AddCommMonoid R] {α : Type u_7} {β : Type u_8} (s : HahnSeries.SummableFamily Γ R α) (f : α β) :
                        (s.embDomain f).hsum = s.hsum

                        The powers of an element of positive valuation form a summable family.

                        Equations
                        Instances For
                          @[simp]
                          theorem HahnSeries.SummableFamily.powers_toFun {Γ : Type u_1} {R : Type u_3} [LinearOrderedCancelAddCommMonoid Γ] [CommRing R] [IsDomain R] (x : HahnSeries Γ R) (hx : 0 < x.orderTop) (n : ) :
                          @[simp]
                          theorem HahnSeries.unit_aux {Γ : Type u_1} {R : Type u_3} [LinearOrderedAddCommGroup Γ] [CommRing R] [IsDomain R] (x : HahnSeries Γ R) {r : R} (hr : r * x.leadingCoeff = 1) :
                          0 < (1 - (HahnSeries.single (-x.order)) r * x).orderTop
                          theorem HahnSeries.isUnit_iff {Γ : Type u_1} {R : Type u_3} [LinearOrderedAddCommGroup Γ] [CommRing R] [IsDomain R] {x : HahnSeries Γ R} :
                          IsUnit x IsUnit x.leadingCoeff
                          instance HahnSeries.instField {Γ : Type u_1} {R : Type u_3} [LinearOrderedAddCommGroup Γ] [Field R] :
                          Equations