ring_theory.hahn_series
⟷
Mathlib.RingTheory.HahnSeries.Summable
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -6,8 +6,8 @@ Authors: Aaron Anderson
import Order.WellFoundedSet
import Algebra.BigOperators.Finprod
import RingTheory.Valuation.Basic
-import RingTheory.PowerSeries.Basic
-import Data.Finsupp.Pwo
+import RingTheory.MvPowerSeries.Basic
+import Data.Finsupp.PWO
import Data.Finset.MulAntidiagonal
import Algebra.Order.Group.WithTop
@@ -1037,7 +1037,7 @@ theorem order_pow {Γ} [LinearOrderedCancelAddCommMonoid Γ] [Semiring R] [NoZer
· simp
rcases eq_or_ne x 0 with (rfl | hx)
· simp
- rw [pow_succ', order_mul (pow_ne_zero _ hx) hx, succ_nsmul', IH]
+ rw [pow_succ, order_mul (pow_ne_zero _ hx) hx, succ_nsmul, IH]
#align hahn_series.order_pow HahnSeries.order_pow
-/
@@ -1387,7 +1387,7 @@ theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
rw [RingHom.map_pow]
induction' n with n ih
· simp; rfl
- rw [pow_succ, ih, of_power_series_X, mul_comm, single_mul_single, one_mul, Nat.cast_succ]
+ rw [pow_succ', ih, of_power_series_X, mul_comm, single_mul_single, one_mul, Nat.cast_succ]
#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_pow
-/
@@ -2060,7 +2060,7 @@ theorem embDomain_succ_smul_powers :
rw [Set.mem_range, not_exists]
exact Nat.succ_ne_zero
· refine' Eq.trans (emb_domain_image _ ⟨Nat.succ, Nat.succ_injective⟩) _
- simp only [pow_succ, coe_powers, coe_sub, smul_apply, coe_of_finsupp, Pi.sub_apply]
+ simp only [pow_succ', coe_powers, coe_sub, smul_apply, coe_of_finsupp, Pi.sub_apply]
rw [Finsupp.single_eq_of_ne n.succ_ne_zero.symm, sub_zero]
#align hahn_series.summable_family.emb_domain_succ_smul_powers HahnSeries.SummableFamily.embDomain_succ_smul_powers
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -317,7 +317,7 @@ theorem coeff_eq_zero_of_lt_order {x : HahnSeries Γ R} {i : Γ} (hi : i < x.ord
rcases eq_or_ne x 0 with (rfl | hx)
· simp
contrapose! hi
- rw [← Ne.def, ← mem_support] at hi
+ rw [← Ne.def, ← mem_support] at hi
rw [order_of_ne hx]
exact Set.IsWF.not_lt_min _ _ hi
#align hahn_series.coeff_eq_zero_of_lt_order HahnSeries.coeff_eq_zero_of_lt_order
@@ -354,7 +354,7 @@ theorem embDomain_coeff {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {a : Γ} :
· rw [dif_neg, Classical.not_not.1 fun c => ha ((mem_support _ _).2 c)]
contrapose! ha
obtain ⟨b, hb1, hb2⟩ := (Set.mem_image _ _ _).1 ha
- rwa [f.injective hb2] at hb1
+ rwa [f.injective hb2] at hb1
#align hahn_series.emb_domain_coeff HahnSeries.embDomain_coeff
-/
@@ -418,9 +418,9 @@ theorem embDomain_injective {f : Γ ↪o Γ'} :
Function.Injective (embDomain f : HahnSeries Γ R → HahnSeries Γ' R) := fun x y xy =>
by
ext g
- rw [ext_iff, Function.funext_iff] at xy
+ rw [ext_iff, Function.funext_iff] at xy
have xyg := xy (f g)
- rwa [emb_domain_coeff, emb_domain_coeff] at xyg
+ rwa [emb_domain_coeff, emb_domain_coeff] at xyg
#align hahn_series.emb_domain_injective HahnSeries.embDomain_injective
-/
@@ -464,7 +464,7 @@ theorem add_coeff {x y : HahnSeries Γ R} {a : Γ} : (x + y).coeff a = x.coeff a
#print HahnSeries.support_add_subset /-
theorem support_add_subset {x y : HahnSeries Γ R} : support (x + y) ⊆ support x ∪ support y :=
fun a ha => by
- rw [mem_support, add_coeff] at ha
+ rw [mem_support, add_coeff] at ha
rw [Set.mem_union, mem_support, mem_support]
contrapose! ha
rw [ha.1, ha.2, add_zero]
@@ -753,7 +753,7 @@ theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {
rw [mul_coeff]
apply sum_subset_zero_on_sdiff (add_antidiagonal_mono_right hys) _ fun _ _ => rfl
intro b hb
- simp only [not_and, mem_sdiff, mem_add_antidiagonal, mem_support, not_imp_not] at hb
+ simp only [not_and, mem_sdiff, mem_add_antidiagonal, mem_support, not_imp_not] at hb
rw [hb.2 hb.1.1 hb.1.2.2, MulZeroClass.mul_zero]
#align hahn_series.mul_coeff_right' HahnSeries.mul_coeff_right'
-/
@@ -767,7 +767,7 @@ theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a
rw [mul_coeff]
apply sum_subset_zero_on_sdiff (add_antidiagonal_mono_left hxs) _ fun _ _ => rfl
intro b hb
- simp only [not_and', mem_sdiff, mem_add_antidiagonal, mem_support, not_ne_iff] at hb
+ simp only [not_and', mem_sdiff, mem_add_antidiagonal, mem_support, not_ne_iff] at hb
rw [hb.2 ⟨hb.1.2.1, hb.1.2.2⟩, MulZeroClass.zero_mul]
#align hahn_series.mul_coeff_left' HahnSeries.mul_coeff_left'
-/
@@ -812,8 +812,8 @@ theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
simp only [not_mem_empty, not_and, Set.mem_singleton_iff, Classical.not_not,
mem_add_antidiagonal, Set.mem_setOf_eq, iff_false_iff]
rintro rfl h2 h1
- rw [add_comm] at h1
- rw [← add_right_cancel h1] at hx
+ rw [add_comm] at h1
+ rw [← add_right_cancel h1] at hx
exact h2 hx
trans ∑ ij : Γ × Γ in {(b, a)}, (single b r).coeff ij.fst * x.coeff ij.snd
· apply sum_congr _ fun _ _ => rfl
@@ -822,7 +822,7 @@ theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
Set.mem_setOf_eq]
constructor
· rintro ⟨rfl, h2, h1⟩
- rw [add_comm] at h1
+ rw [add_comm] at h1
refine' ⟨rfl, add_right_cancel h1⟩
· rintro ⟨rfl, rfl⟩
exact ⟨rfl, by simp [hx], add_comm _ _⟩
@@ -844,7 +844,7 @@ theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
simp only [not_mem_empty, not_and, Set.mem_singleton_iff, Classical.not_not,
mem_add_antidiagonal, Set.mem_setOf_eq, iff_false_iff]
rintro h2 rfl h1
- rw [← add_right_cancel h1] at hx
+ rw [← add_right_cancel h1] at hx
exact h2 hx
trans ∑ ij : Γ × Γ in {(a, b)}, x.coeff ij.fst * (single b r).coeff ij.snd
· apply sum_congr _ fun _ _ => rfl
@@ -888,7 +888,7 @@ theorem support_mul_subset_add_support [NonUnitalNonAssocSemiring R] {x y : Hahn
· exact x.is_pwo_support
· exact y.is_pwo_support
contrapose! hx
- simp only [not_nonempty_iff_eq_empty, Ne.def, Set.mem_setOf_eq] at hx
+ simp only [not_nonempty_iff_eq_empty, Ne.def, Set.mem_setOf_eq] at hx
simp [hx]
#align hahn_series.support_mul_subset_add_support HahnSeries.support_mul_subset_add_support
-/
@@ -919,7 +919,7 @@ private theorem mul_assoc' [NonUnitalSemiring R] (x y z : HahnSeries Γ R) :
exact ⟨⟨nx, Set.add_mem_add ny nz, (add_assoc _ _ _).symm⟩, ny, nz⟩
· rintro ⟨⟨i1, j1⟩, k1, l1⟩ ⟨⟨i2, j2⟩, k2, l2⟩ H1 H2 H3 H4 H5
simp only [Set.image2_add, Prod.mk.inj_iff, mem_add_antidiagonal, Ne.def, Set.image_prod,
- mem_sigma, Set.mem_setOf_eq, heq_iff_eq] at H1 H3 H5
+ mem_sigma, Set.mem_setOf_eq, heq_iff_eq] at H1 H3 H5
obtain ⟨⟨rfl, H⟩, rfl, rfl⟩ := H5
simp only [and_true_iff, Prod.mk.inj_iff, eq_self_iff_true, heq_iff_eq, ← H1.2.2.2, ← H3.2.2.2]
· rintro ⟨⟨i, j⟩, ⟨k, l⟩⟩ H1 H2
@@ -1056,7 +1056,7 @@ theorem single_mul_single {a b : Γ} {r s : R} : single a r * single b s = singl
· rw [single_coeff_of_ne h, mul_coeff, sum_eq_zero]
simp_rw [mem_add_antidiagonal]
rintro ⟨y, z⟩ ⟨hy, hz, rfl⟩
- rw [eq_of_mem_support_single hy, eq_of_mem_support_single hz] at h
+ rw [eq_of_mem_support_single hy, eq_of_mem_support_single hz] at h
exact (h rfl).elim
#align hahn_series.single_mul_single HahnSeries.single_mul_single
-/
@@ -1097,9 +1097,9 @@ theorem C_one : C (1 : R) = (1 : HahnSeries Γ R) :=
theorem C_injective : Function.Injective (C : R → HahnSeries Γ R) :=
by
intro r s rs
- rw [ext_iff, Function.funext_iff] at rs
+ rw [ext_iff, Function.funext_iff] at rs
have h := rs 0
- rwa [C_apply, single_coeff_same, C_apply, single_coeff_same] at h
+ rwa [C_apply, single_coeff_same, C_apply, single_coeff_same] at h
#align hahn_series.C_injective HahnSeries.C_injective
-/
@@ -1107,7 +1107,7 @@ theorem C_injective : Function.Injective (C : R → HahnSeries Γ R) :=
theorem C_ne_zero {r : R} (h : r ≠ 0) : (C r : HahnSeries Γ R) ≠ 0 :=
by
contrapose! h
- rw [← C_zero] at h
+ rw [← C_zero] at h
exact C_injective h
#align hahn_series.C_ne_zero HahnSeries.C_ne_zero
-/
@@ -1157,7 +1157,7 @@ theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
apply sum_subset
· rintro ⟨i, j⟩ hij
simp only [exists_prop, mem_map, Prod.mk.inj_iff, mem_add_antidiagonal,
- Function.Embedding.coe_prodMap, mem_support, Prod.exists] at hij
+ Function.Embedding.coe_prodMap, mem_support, Prod.exists] at hij
obtain ⟨i, j, ⟨hx, hy, rfl⟩, rfl, rfl⟩ := hij
simp [hx, hy, hf]
· rintro ⟨_, _⟩ h1 h2
@@ -1167,7 +1167,7 @@ theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
simp only [exists_prop, mem_map, Prod.mk.inj_iff, mem_add_antidiagonal,
Function.Embedding.coe_prodMap, mem_support, Prod.exists]
simp only [mem_add_antidiagonal, emb_domain_coeff, mem_support, ← hf,
- OrderEmbedding.eq_iff_eq] at h1
+ OrderEmbedding.eq_iff_eq] at h1
exact ⟨i, j, h1, rfl⟩
· rw [emb_domain_notin_range hg, eq_comm]
contrapose! hg
@@ -1573,7 +1573,7 @@ theorem isPWO_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring
induction' n with n ih <;> intro g hn
· simp only [exists_prop, and_true_iff, Set.mem_singleton_iff, Set.setOf_eq_eq_singleton,
mem_support, ite_eq_right_iff, Ne.def, not_false_iff, one_ne_zero, pow_zero,
- Classical.not_forall, one_coeff] at hn
+ Classical.not_forall, one_coeff] at hn
rw [hn, SetLike.mem_coe]
exact AddSubmonoid.zero_mem _
· obtain ⟨i, j, hi, hj, rfl⟩ := support_mul_subset_add_support hn
@@ -1622,9 +1622,8 @@ theorem finite_co_support (s : SummableFamily Γ R α) (g : Γ) :
#print HahnSeries.SummableFamily.coe_injective /-
theorem coe_injective : @Function.Injective (SummableFamily Γ R α) (α → HahnSeries Γ R) coeFn
- | ⟨f1, hU1, hf1⟩, ⟨f2, hU2, hf2⟩, h =>
- by
- change f1 = f2 at h
+ | ⟨f1, hU1, hf1⟩, ⟨f2, hU2, hf2⟩, h => by
+ change f1 = f2 at h
subst h
#align hahn_series.summable_family.coe_injective HahnSeries.SummableFamily.coe_injective
-/
@@ -1648,7 +1647,7 @@ instance : Add (SummableFamily Γ R α) :=
((x.finite_co_support g).union (y.finite_co_support g)).Subset
(by
intro a ha
- change (x a).coeff g + (y a).coeff g ≠ 0 at ha
+ change (x a).coeff g + (y a).coeff g ≠ 0 at ha
rw [Set.mem_union, Function.mem_support, Function.mem_support]
contrapose! ha
rw [ha.1, ha.2, add_zero]) }⟩
@@ -1720,7 +1719,7 @@ theorem hsum_coeff {s : SummableFamily Γ R α} {g : Γ} : s.hsum.coeff g = ∑
theorem support_hsum_subset {s : SummableFamily Γ R α} : s.hsum.support ⊆ ⋃ a : α, (s a).support :=
fun g hg =>
by
- rw [mem_support, hsum_coeff, finsum_eq_sum _ (s.finite_co_support _)] at hg
+ rw [mem_support, hsum_coeff, finsum_eq_sum _ (s.finite_co_support _)] at hg
obtain ⟨a, h1, h2⟩ := exists_ne_zero_of_sum_ne_zero hg
rw [Set.mem_iUnion]
exact ⟨a, h2⟩
@@ -1949,7 +1948,7 @@ def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R
by
refine' s.is_pwo_Union_support.mono (Set.iUnion_subset fun b g h => _)
by_cases hb : b ∈ Set.range f
- · rw [dif_pos hb] at h
+ · rw [dif_pos hb] at h
exact Set.mem_iUnion.2 ⟨Classical.choose hb, h⟩
· contrapose! h
simp [hb]
@@ -1958,7 +1957,7 @@ def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R
(by
intro b h
by_cases hb : b ∈ Set.range f
- · simp only [Ne.def, Set.mem_setOf_eq, dif_pos hb] at h
+ · simp only [Ne.def, Set.mem_setOf_eq, dif_pos hb] at h
exact ⟨Classical.choose hb, h, Classical.choose_spec hb⟩
· contrapose! h
simp only [Ne.def, Set.mem_setOf_eq, dif_neg hb, Classical.not_not, zero_coeff])
@@ -2122,10 +2121,10 @@ theorem isUnit_iff {x : HahnSeries Γ R} : IsUnit x ↔ IsUnit (x.coeff x.order)
rw [ui, one_coeff, if_pos]
rw [← order_mul (left_ne_zero_of_mul_eq_one ui) (right_ne_zero_of_mul_eq_one ui), ui, order_one]
· rintro ⟨⟨u, i, ui, iu⟩, h⟩
- rw [Units.val_mk] at h
- rw [h] at iu
+ rw [Units.val_mk] at h
+ rw [h] at iu
have h := summable_family.one_sub_self_mul_hsum_powers (unit_aux x iu)
- rw [sub_sub_cancel] at h
+ rw [sub_sub_cancel] at h
exact isUnit_of_mul_isUnit_right (isUnit_of_mul_eq_one _ _ h)
#align hahn_series.is_unit_iff HahnSeries.isUnit_iff
-/
@@ -2147,7 +2146,7 @@ instance [Field R] : Field (HahnSeries Γ R) :=
have h :=
summable_family.one_sub_self_mul_hsum_powers
(unit_aux x (inv_mul_cancel (coeff_order_ne_zero x0)))
- rw [sub_sub_cancel] at h
+ rw [sub_sub_cancel] at h
rw [← mul_assoc, mul_comm x, h] }
end Inversion
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -1592,7 +1592,7 @@ variable (Γ) (R) [PartialOrder Γ] [AddCommMonoid R]
structure SummableFamily (α : Type _) where
toFun : α → HahnSeries Γ R
isPWO_iUnion_support' : Set.IsPWO (⋃ a : α, (to_fun a).support)
- finite_co_support' : ∀ g : Γ, {a | (to_fun a).coeff g ≠ 0}.Finite
+ finiteₓ_co_support' : ∀ g : Γ, {a | (to_fun a).coeff g ≠ 0}.Finite
#align hahn_series.summable_family HahnSeries.SummableFamily
-/
@@ -1616,7 +1616,7 @@ theorem isPWO_iUnion_support (s : SummableFamily Γ R α) : Set.IsPWO (⋃ a :
#print HahnSeries.SummableFamily.finite_co_support /-
theorem finite_co_support (s : SummableFamily Γ R α) (g : Γ) :
(Function.support fun a => (s a).coeff g).Finite :=
- s.finite_co_support' g
+ s.finiteₓ_co_support' g
#align hahn_series.summable_family.finite_co_support HahnSeries.SummableFamily.finite_co_support
-/
@@ -1644,7 +1644,7 @@ instance : Add (SummableFamily Γ R α) :=
(by
rw [← Set.iUnion_union_distrib]
exact Set.iUnion_mono fun a => support_add_subset)
- finite_co_support' := fun g =>
+ finiteₓ_co_support' := fun g =>
((x.finite_co_support g).union (y.finite_co_support g)).Subset
(by
intro a ha
@@ -1749,7 +1749,7 @@ instance : AddCommGroup (SummableFamily Γ R α) :=
neg := fun s =>
{ toFun := fun a => -s a
isPWO_iUnion_support' := by simp_rw [support_neg]; exact s.is_pwo_Union_support'
- finite_co_support' := fun g =>
+ finiteₓ_co_support' := fun g =>
by
simp only [neg_coeff', Pi.neg_apply, Ne.def, neg_eq_zero]
exact s.finite_co_support g }
@@ -1797,7 +1797,7 @@ instance : SMul (HahnSeries Γ R) (SummableFamily Γ R α)
intro g
simp only [Set.mem_iUnion, exists_imp]
exact fun a ha => (Set.add_subset_add (Set.Subset.refl _) (Set.subset_iUnion _ a)) ha
- finite_co_support' := fun g =>
+ finiteₓ_co_support' := fun g =>
by
refine'
((add_antidiagonal x.is_pwo_support s.is_pwo_Union_support g).finite_toSet.biUnion'
@@ -1902,7 +1902,7 @@ def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α
rw [Finsupp.mem_support_iff, ← support_nonempty_iff]
exact ⟨g, hg⟩
exact Set.mem_biUnion haf hg
- finite_co_support' g :=
+ finiteₓ_co_support' g :=
by
refine' f.support.finite_to_set.subset fun a ha => _
simp only [coeff.add_monoid_hom_apply, mem_coe, Finsupp.mem_support_iff, Ne.def,
@@ -1953,7 +1953,7 @@ def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R
exact Set.mem_iUnion.2 ⟨Classical.choose hb, h⟩
· contrapose! h
simp [hb]
- finite_co_support' g :=
+ finiteₓ_co_support' g :=
((s.finite_co_support g).image f).Subset
(by
intro b h
@@ -2012,7 +2012,7 @@ def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R
where
toFun n := x ^ n
isPWO_iUnion_support' := isPWO_iUnion_support_powers hx
- finite_co_support' g := by
+ finiteₓ_co_support' g := by
have hpwo := is_pwo_Union_support_powers hx
by_cases hg : g ∈ ⋃ n : ℕ, {g | (x ^ n).coeff g ≠ 0}
swap; · exact set.finite_empty.subset fun n hn => hg (Set.mem_iUnion.2 ⟨n, hn⟩)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -1283,6 +1283,12 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
ext n
simp only [PowerSeries.coeff_mul, PowerSeries.coeff_mk, mul_coeff, is_pwo_support]
classical
+ refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
+ ext m
+ simp only [nat.mem_antidiagonal, mem_add_antidiagonal, and_congr_left_iff, mem_filter,
+ mem_support]
+ rintro h
+ rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_power_series HahnSeries.toPowerSeries
-/
@@ -1404,6 +1410,14 @@ def toMvPowerSeries {σ : Type _} [Fintype σ] : HahnSeries (σ →₀ ℕ) R
ext n
simp only [MvPowerSeries.coeff_mul]
classical
+ change (f * g).coeff n = _
+ simp_rw [mul_coeff]
+ refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
+ ext m
+ simp only [and_congr_left_iff, mem_add_antidiagonal, mem_filter, mem_support,
+ Finsupp.mem_antidiagonal]
+ rintro h
+ rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_mv_power_series HahnSeries.toMvPowerSeries
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -1283,12 +1283,6 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
ext n
simp only [PowerSeries.coeff_mul, PowerSeries.coeff_mk, mul_coeff, is_pwo_support]
classical
- refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
- ext m
- simp only [nat.mem_antidiagonal, mem_add_antidiagonal, and_congr_left_iff, mem_filter,
- mem_support]
- rintro h
- rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_power_series HahnSeries.toPowerSeries
-/
@@ -1410,14 +1404,6 @@ def toMvPowerSeries {σ : Type _} [Fintype σ] : HahnSeries (σ →₀ ℕ) R
ext n
simp only [MvPowerSeries.coeff_mul]
classical
- change (f * g).coeff n = _
- simp_rw [mul_coeff]
- refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
- ext m
- simp only [and_congr_left_iff, mem_add_antidiagonal, mem_filter, mem_support,
- Finsupp.mem_antidiagonal]
- rintro h
- rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_mv_power_series HahnSeries.toMvPowerSeries
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -596,7 +596,7 @@ variable [PartialOrder Γ] {V : Type _} [Monoid R] [AddMonoid V] [DistribMulActi
instance : SMul R (HahnSeries Γ V) :=
⟨fun r x =>
{ coeff := r • x.coeff
- isPWO_support' := x.isPWO_support.mono (Function.support_smul_subset_right r x.coeff) }⟩
+ isPWO_support' := x.isPWO_support.mono (Function.support_const_smul_subset r x.coeff) }⟩
#print HahnSeries.smul_coeff /-
@[simp]
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -66,7 +66,7 @@ noncomputable section
@[ext]
structure HahnSeries (Γ : Type _) (R : Type _) [PartialOrder Γ] [Zero R] where
coeff : Γ → R
- isPwo_support' : (support coeff).IsPwo
+ isPWO_support' : (support coeff).IsPWO
#align hahn_series HahnSeries
-/
@@ -99,18 +99,18 @@ def support (x : HahnSeries Γ R) : Set Γ :=
#align hahn_series.support HahnSeries.support
-/
-#print HahnSeries.isPwo_support /-
+#print HahnSeries.isPWO_support /-
@[simp]
-theorem isPwo_support (x : HahnSeries Γ R) : x.support.IsPwo :=
- x.isPwo_support'
-#align hahn_series.is_pwo_support HahnSeries.isPwo_support
+theorem isPWO_support (x : HahnSeries Γ R) : x.support.IsPWO :=
+ x.isPWO_support'
+#align hahn_series.is_pwo_support HahnSeries.isPWO_support
-/
-#print HahnSeries.isWf_support /-
+#print HahnSeries.isWF_support /-
@[simp]
-theorem isWf_support (x : HahnSeries Γ R) : x.support.IsWf :=
- x.isPwo_support.IsWf
-#align hahn_series.is_wf_support HahnSeries.isWf_support
+theorem isWF_support (x : HahnSeries Γ R) : x.support.IsWF :=
+ x.isPWO_support.IsWF
+#align hahn_series.is_wf_support HahnSeries.isWF_support
-/
#print HahnSeries.mem_support /-
@@ -122,7 +122,7 @@ theorem mem_support (x : HahnSeries Γ R) (a : Γ) : a ∈ x.support ↔ x.coeff
instance : Zero (HahnSeries Γ R) :=
⟨{ coeff := 0
- isPwo_support' := by simp }⟩
+ isPWO_support' := by simp }⟩
instance : Inhabited (HahnSeries Γ R) :=
⟨0⟩
@@ -177,7 +177,7 @@ def single (a : Γ) : ZeroHom R (HahnSeries Γ R)
where
toFun r :=
{ coeff := Pi.single a r
- isPwo_support' := (Set.isPwo_singleton a).mono Pi.support_single_subset }
+ isPWO_support' := (Set.isPWO_singleton a).mono Pi.support_single_subset }
map_zero' := ext _ _ (Pi.single_zero _)
#align hahn_series.single HahnSeries.single
-/
@@ -268,7 +268,7 @@ variable [Zero Γ]
/-- The order of a nonzero Hahn series `x` is a minimal element of `Γ` where `x` has a
nonzero coefficient, the order of 0 is 0. -/
def order (x : HahnSeries Γ R) : Γ :=
- if h : x = 0 then 0 else x.isWf_support.min (support_nonempty_iff.2 h)
+ if h : x = 0 then 0 else x.isWF_support.min (support_nonempty_iff.2 h)
#align hahn_series.order HahnSeries.order
-/
@@ -281,7 +281,7 @@ theorem order_zero : order (0 : HahnSeries Γ R) = 0 :=
#print HahnSeries.order_of_ne /-
theorem order_of_ne {x : HahnSeries Γ R} (hx : x ≠ 0) :
- order x = x.isWf_support.min (support_nonempty_iff.2 hx) :=
+ order x = x.isWF_support.min (support_nonempty_iff.2 hx) :=
dif_neg hx
#align hahn_series.order_of_ne HahnSeries.order_of_ne
-/
@@ -298,7 +298,7 @@ theorem coeff_order_ne_zero {x : HahnSeries Γ R} (hx : x ≠ 0) : x.coeff x.ord
theorem order_le_of_coeff_ne_zero {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x : HahnSeries Γ R}
{g : Γ} (h : x.coeff g ≠ 0) : x.order ≤ g :=
le_trans (le_of_eq (order_of_ne (ne_zero_of_coeff_ne_zero h)))
- (Set.IsWf.min_le _ _ ((mem_support _ _).2 h))
+ (Set.IsWF.min_le _ _ ((mem_support _ _).2 h))
#align hahn_series.order_le_of_coeff_ne_zero HahnSeries.order_le_of_coeff_ne_zero
-/
@@ -307,7 +307,7 @@ theorem order_le_of_coeff_ne_zero {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x
theorem order_single (h : r ≠ 0) : (single a r).order = a :=
(order_of_ne (single_ne_zero h)).trans
(support_single_subset
- ((single a r).isWf_support.min_mem (support_nonempty_iff.2 (single_ne_zero h))))
+ ((single a r).isWF_support.min_mem (support_nonempty_iff.2 (single_ne_zero h))))
#align hahn_series.order_single HahnSeries.order_single
-/
@@ -319,7 +319,7 @@ theorem coeff_eq_zero_of_lt_order {x : HahnSeries Γ R} {i : Γ} (hi : i < x.ord
contrapose! hi
rw [← Ne.def, ← mem_support] at hi
rw [order_of_ne hx]
- exact Set.IsWf.not_lt_min _ _ hi
+ exact Set.IsWF.not_lt_min _ _ hi
#align hahn_series.coeff_eq_zero_of_lt_order HahnSeries.coeff_eq_zero_of_lt_order
-/
@@ -333,8 +333,8 @@ variable {Γ' : Type _} [PartialOrder Γ']
/-- Extends the domain of a `hahn_series` by an `order_embedding`. -/
def embDomain (f : Γ ↪o Γ') : HahnSeries Γ R → HahnSeries Γ' R := fun x =>
{ coeff := fun b : Γ' => if h : b ∈ f '' x.support then x.coeff (Classical.choose h) else 0
- isPwo_support' :=
- (x.isPwo_support.image_of_monotone f.Monotone).mono fun b hb =>
+ isPWO_support' :=
+ (x.isPWO_support.image_of_monotone f.Monotone).mono fun b hb =>
by
contrapose! hb
rw [Function.mem_support, dif_neg hb, Classical.not_not] }
@@ -439,7 +439,7 @@ variable [AddMonoid R]
instance : Add (HahnSeries Γ R)
where add x y :=
{ coeff := x.coeff + y.coeff
- isPwo_support' := (x.isPwo_support.union y.isPwo_support).mono (Function.support_add _ _) }
+ isPWO_support' := (x.isPWO_support.union y.isPWO_support).mono (Function.support_add _ _) }
instance : AddMonoid (HahnSeries Γ R) where
zero := 0
@@ -478,10 +478,10 @@ theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y :
by_cases hx : x = 0; · simp [hx]
by_cases hy : y = 0; · simp [hy]
rw [order_of_ne hx, order_of_ne hy, order_of_ne hxy]
- refine' le_trans _ (Set.IsWf.min_le_min_of_subset support_add_subset)
+ refine' le_trans _ (Set.IsWF.min_le_min_of_subset support_add_subset)
· exact x.is_wf_support.union y.is_wf_support
· exact Set.Nonempty.mono (Set.subset_union_left _ _) (support_nonempty_iff.2 hx)
- rw [Set.IsWf.min_union]
+ rw [Set.IsWF.min_union]
#align hahn_series.min_order_le_order_add HahnSeries.min_order_le_order_add
-/
@@ -536,7 +536,7 @@ instance : AddGroup (HahnSeries Γ R) :=
HahnSeries.addMonoid with
neg := fun x =>
{ coeff := fun a => -x.coeff a
- isPwo_support' := by
+ isPWO_support' := by
rw [Function.support_neg]
exact x.is_pwo_support }
add_left_neg := fun x => by ext; apply add_left_neg }
@@ -596,7 +596,7 @@ variable [PartialOrder Γ] {V : Type _} [Monoid R] [AddMonoid V] [DistribMulActi
instance : SMul R (HahnSeries Γ V) :=
⟨fun r x =>
{ coeff := r • x.coeff
- isPwo_support' := x.isPwo_support.mono (Function.support_smul_subset_right r x.coeff) }⟩
+ isPWO_support' := x.isPWO_support.mono (Function.support_smul_subset_right r x.coeff) }⟩
#print HahnSeries.smul_coeff /-
@[simp]
@@ -721,8 +721,8 @@ theorem order_one [MulZeroOneClass R] : order (1 : HahnSeries Γ R) = 0 :=
instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R)
where mul x y :=
{ coeff := fun a =>
- ∑ ij in addAntidiagonal x.isPwo_support y.isPwo_support a, x.coeff ij.fst * y.coeff ij.snd
- isPwo_support' :=
+ ∑ ij in addAntidiagonal x.isPWO_support y.isPWO_support a, x.coeff ij.fst * y.coeff ij.snd
+ isPWO_support' :=
haveI h :
{a : Γ |
∑ ij : Γ × Γ in add_antidiagonal x.is_pwo_support y.is_pwo_support a,
@@ -739,16 +739,16 @@ instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R)
@[simp]
theorem mul_coeff [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} :
(x * y).coeff a =
- ∑ ij in addAntidiagonal x.isPwo_support y.isPwo_support a, x.coeff ij.fst * y.coeff ij.snd :=
+ ∑ ij in addAntidiagonal x.isPWO_support y.isPWO_support a, x.coeff ij.fst * y.coeff ij.snd :=
rfl
#align hahn_series.mul_coeff HahnSeries.mul_coeff
-/
#print HahnSeries.mul_coeff_right' /-
theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
- (hs : s.IsPwo) (hys : y.support ⊆ s) :
+ (hs : s.IsPWO) (hys : y.support ⊆ s) :
(x * y).coeff a =
- ∑ ij in addAntidiagonal x.isPwo_support hs a, x.coeff ij.fst * y.coeff ij.snd :=
+ ∑ ij in addAntidiagonal x.isPWO_support hs a, x.coeff ij.fst * y.coeff ij.snd :=
by
rw [mul_coeff]
apply sum_subset_zero_on_sdiff (add_antidiagonal_mono_right hys) _ fun _ _ => rfl
@@ -760,9 +760,9 @@ theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {
#print HahnSeries.mul_coeff_left' /-
theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
- (hs : s.IsPwo) (hxs : x.support ⊆ s) :
+ (hs : s.IsPWO) (hxs : x.support ⊆ s) :
(x * y).coeff a =
- ∑ ij in addAntidiagonal hs y.isPwo_support a, x.coeff ij.fst * y.coeff ij.snd :=
+ ∑ ij in addAntidiagonal hs y.isPWO_support a, x.coeff ij.fst * y.coeff ij.snd :=
by
rw [mul_coeff]
apply sum_subset_zero_on_sdiff (add_antidiagonal_mono_left hxs) _ fun _ _ => rfl
@@ -1023,8 +1023,8 @@ theorem order_mul {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocS
· apply order_le_of_coeff_ne_zero
rw [mul_coeff_order_add_order x y]
exact mul_ne_zero (coeff_order_ne_zero hx) (coeff_order_ne_zero hy)
- · rw [order_of_ne hx, order_of_ne hy, order_of_ne (mul_ne_zero hx hy), ← Set.IsWf.min_add]
- exact Set.IsWf.min_le_min_of_subset support_mul_subset_add_support
+ · rw [order_of_ne hx, order_of_ne hy, order_of_ne (mul_ne_zero hx hy), ← Set.IsWF.min_add]
+ exact Set.IsWF.min_le_min_of_subset support_mul_subset_add_support
#align hahn_series.order_mul HahnSeries.order_mul
-/
@@ -1275,7 +1275,7 @@ variable [Semiring R]
def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
where
toFun f := PowerSeries.mk f.coeff
- invFun f := ⟨fun n => PowerSeries.coeff R n f, (Nat.lt_wfRel.IsWf _).IsPwo⟩
+ invFun f := ⟨fun n => PowerSeries.coeff R n f, (Nat.lt_wfRel.IsWF _).IsPWO⟩
left_inv f := by ext; simp
right_inv f := by ext; simp
map_add' f g := by ext; simp
@@ -1402,7 +1402,7 @@ After importing `algebra.order.pi` the ring `hahn_series (σ → ℕ) R` could b
def toMvPowerSeries {σ : Type _} [Fintype σ] : HahnSeries (σ →₀ ℕ) R ≃+* MvPowerSeries σ R
where
toFun f := f.coeff
- invFun f := ⟨(f : (σ →₀ ℕ) → R), Finsupp.isPwo _⟩
+ invFun f := ⟨(f : (σ →₀ ℕ) → R), Finsupp.isPWO _⟩
left_inv f := by ext; simp
right_inv f := by ext; simp
map_add' f g := by ext; simp
@@ -1563,9 +1563,9 @@ theorem addVal_le_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g
end Valuation
-#print HahnSeries.isPwo_iUnion_support_powers /-
-theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
- {x : HahnSeries Γ R} (hx : 0 < addVal Γ R x) : (⋃ n : ℕ, (x ^ n).support).IsPwo :=
+#print HahnSeries.isPWO_iUnion_support_powers /-
+theorem isPWO_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
+ {x : HahnSeries Γ R} (hx : 0 < addVal Γ R x) : (⋃ n : ℕ, (x ^ n).support).IsPWO :=
by
apply (x.is_wf_support.is_pwo.add_submonoid_closure fun g hg => _).mono _
· exact WithTop.coe_le_coe.1 (le_trans (le_of_lt hx) (add_val_le_of_coeff_ne_zero hg))
@@ -1578,7 +1578,7 @@ theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring
exact AddSubmonoid.zero_mem _
· obtain ⟨i, j, hi, hj, rfl⟩ := support_mul_subset_add_support hn
exact SetLike.mem_coe.2 (AddSubmonoid.add_mem _ (AddSubmonoid.subset_closure hi) (ih hj))
-#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPwo_iUnion_support_powers
+#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPWO_iUnion_support_powers
-/
section
@@ -1591,7 +1591,7 @@ variable (Γ) (R) [PartialOrder Γ] [AddCommMonoid R]
and that only finitely many series are nonzero at any given coefficient. -/
structure SummableFamily (α : Type _) where
toFun : α → HahnSeries Γ R
- isPwo_iUnion_support' : Set.IsPwo (⋃ a : α, (to_fun a).support)
+ isPWO_iUnion_support' : Set.IsPWO (⋃ a : α, (to_fun a).support)
finite_co_support' : ∀ g : Γ, {a | (to_fun a).coeff g ≠ 0}.Finite
#align hahn_series.summable_family HahnSeries.SummableFamily
-/
@@ -1607,10 +1607,10 @@ variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
instance : CoeFun (SummableFamily Γ R α) fun _ => α → HahnSeries Γ R :=
⟨toFun⟩
-#print HahnSeries.SummableFamily.isPwo_iUnion_support /-
-theorem isPwo_iUnion_support (s : SummableFamily Γ R α) : Set.IsPwo (⋃ a : α, (s a).support) :=
- s.isPwo_iUnion_support'
-#align hahn_series.summable_family.is_pwo_Union_support HahnSeries.SummableFamily.isPwo_iUnion_support
+#print HahnSeries.SummableFamily.isPWO_iUnion_support /-
+theorem isPWO_iUnion_support (s : SummableFamily Γ R α) : Set.IsPWO (⋃ a : α, (s a).support) :=
+ s.isPWO_iUnion_support'
+#align hahn_series.summable_family.is_pwo_Union_support HahnSeries.SummableFamily.isPWO_iUnion_support
-/
#print HahnSeries.SummableFamily.finite_co_support /-
@@ -1639,8 +1639,8 @@ theorem ext {s t : SummableFamily Γ R α} (h : ∀ a : α, s a = t a) : s = t :
instance : Add (SummableFamily Γ R α) :=
⟨fun x y =>
{ toFun := x + y
- isPwo_iUnion_support' :=
- (x.isPwo_iUnion_support.union y.isPwo_iUnion_support).mono
+ isPWO_iUnion_support' :=
+ (x.isPWO_iUnion_support.union y.isPWO_iUnion_support).mono
(by
rw [← Set.iUnion_union_distrib]
exact Set.iUnion_mono fun a => support_add_subset)
@@ -1699,8 +1699,8 @@ instance : AddCommMonoid (SummableFamily Γ R α)
def hsum (s : SummableFamily Γ R α) : HahnSeries Γ R
where
coeff g := ∑ᶠ i, (s i).coeff g
- isPwo_support' :=
- s.isPwo_iUnion_support.mono fun g => by
+ isPWO_support' :=
+ s.isPWO_iUnion_support.mono fun g => by
contrapose
rw [Set.mem_iUnion, not_exists, Function.mem_support, Classical.not_not]
simp_rw [mem_support, Classical.not_not]
@@ -1748,7 +1748,7 @@ instance : AddCommGroup (SummableFamily Γ R α) :=
SummableFamily.addCommMonoid with
neg := fun s =>
{ toFun := fun a => -s a
- isPwo_iUnion_support' := by simp_rw [support_neg]; exact s.is_pwo_Union_support'
+ isPWO_iUnion_support' := by simp_rw [support_neg]; exact s.is_pwo_Union_support'
finite_co_support' := fun g =>
by
simp only [neg_coeff', Pi.neg_apply, Ne.def, neg_eq_zero]
@@ -1790,7 +1790,7 @@ variable [OrderedCancelAddCommMonoid Γ] [Semiring R] {α : Type _}
instance : SMul (HahnSeries Γ R) (SummableFamily Γ R α)
where smul x s :=
{ toFun := fun a => x * s a
- isPwo_iUnion_support' :=
+ isPWO_iUnion_support' :=
by
apply (x.is_pwo_support.add s.is_pwo_Union_support).mono
refine' Set.Subset.trans (Set.iUnion_mono fun a => support_mul_subset_add_support) _
@@ -1893,9 +1893,9 @@ variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α
where
toFun := f
- isPwo_iUnion_support' :=
+ isPWO_iUnion_support' :=
by
- apply (f.support.is_pwo_bUnion.2 fun a ha => (f a).isPwo_support).mono
+ apply (f.support.is_pwo_bUnion.2 fun a ha => (f a).isPWO_support).mono
refine' Set.iUnion_subset_iff.2 fun a g hg => _
have haf : a ∈ f.support :=
by
@@ -1945,7 +1945,7 @@ variable [PartialOrder Γ] [AddCommMonoid R] {α β : Type _}
def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R β
where
toFun b := if h : b ∈ Set.range f then s (Classical.choose h) else 0
- isPwo_iUnion_support' :=
+ isPWO_iUnion_support' :=
by
refine' s.is_pwo_Union_support.mono (Set.iUnion_subset fun b g h => _)
by_cases hb : b ∈ Set.range f
@@ -2011,7 +2011,7 @@ variable [LinearOrderedCancelAddCommMonoid Γ] [CommRing R] [IsDomain R]
def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R ℕ
where
toFun n := x ^ n
- isPwo_iUnion_support' := isPwo_iUnion_support_powers hx
+ isPWO_iUnion_support' := isPWO_iUnion_support_powers hx
finite_co_support' g := by
have hpwo := is_pwo_Union_support_powers hx
by_cases hg : g ∈ ⋃ n : ℕ, {g | (x ^ n).coeff g ≠ 0}
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -1926,7 +1926,7 @@ theorem hsum_ofFinsupp {f : α →₀ HahnSeries Γ R} : (ofFinsupp f).hsum = f.
ext g
simp only [hsum_coeff, coe_of_finsupp, Finsupp.sum, Ne.def]
simp_rw [← coeff.add_monoid_hom_apply, id.def]
- rw [AddMonoidHom.map_sum, finsum_eq_sum_of_support_subset]
+ rw [map_sum, finsum_eq_sum_of_support_subset]
intro x h
simp only [coeff.add_monoid_hom_apply, mem_coe, Finsupp.mem_support_iff, Ne.def]
contrapose! h
mathlib commit https://github.com/leanprover-community/mathlib/commit/b1abe23ae96fef89ad30d9f4362c307f72a55010
@@ -1005,7 +1005,7 @@ instance {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocSemiring R
· left; exact hx
right
contrapose! xy
- rw [HahnSeries.ext_iff, Function.funext_iff, not_forall]
+ rw [HahnSeries.ext_iff, Function.funext_iff, Classical.not_forall]
refine' ⟨x.order + y.order, _⟩
rw [mul_coeff_order_add_order x y, zero_coeff, mul_eq_zero]
simp [coeff_order_ne_zero, hx, xy]
@@ -1236,12 +1236,12 @@ theorem algebraMap_apply {r : R} : algebraMap R (HahnSeries Γ A) r = C (algebra
instance [Nontrivial Γ] [Nontrivial R] : Nontrivial (Subalgebra R (HahnSeries Γ R)) :=
⟨⟨⊥, ⊤, by
- rw [Ne.def, SetLike.ext_iff, not_forall]
+ rw [Ne.def, SetLike.ext_iff, Classical.not_forall]
obtain ⟨a, ha⟩ := exists_ne (0 : Γ)
refine' ⟨single a 1, _⟩
simp only [Algebra.mem_bot, not_exists, Set.mem_range, iff_true_iff, Algebra.mem_top]
intro x
- rw [ext_iff, Function.funext_iff, not_forall]
+ rw [ext_iff, Function.funext_iff, Classical.not_forall]
refine' ⟨a, _⟩
rw [single_coeff_same, algebraMap_apply, C_apply, single_coeff_of_ne ha]
exact zero_ne_one⟩⟩
@@ -1572,8 +1572,8 @@ theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring
refine' Set.iUnion_subset fun n => _
induction' n with n ih <;> intro g hn
· simp only [exists_prop, and_true_iff, Set.mem_singleton_iff, Set.setOf_eq_eq_singleton,
- mem_support, ite_eq_right_iff, Ne.def, not_false_iff, one_ne_zero, pow_zero, not_forall,
- one_coeff] at hn
+ mem_support, ite_eq_right_iff, Ne.def, not_false_iff, one_ne_zero, pow_zero,
+ Classical.not_forall, one_coeff] at hn
rw [hn, SetLike.mem_coe]
exact AddSubmonoid.zero_mem _
· obtain ⟨i, j, hi, hj, rfl⟩ := support_mul_subset_add_support hn
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,13 +3,13 @@ Copyright (c) 2021 Aaron Anderson. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Aaron Anderson
-/
-import Mathbin.Order.WellFoundedSet
-import Mathbin.Algebra.BigOperators.Finprod
-import Mathbin.RingTheory.Valuation.Basic
-import Mathbin.RingTheory.PowerSeries.Basic
-import Mathbin.Data.Finsupp.Pwo
-import Mathbin.Data.Finset.MulAntidiagonal
-import Mathbin.Algebra.Order.Group.WithTop
+import Order.WellFoundedSet
+import Algebra.BigOperators.Finprod
+import RingTheory.Valuation.Basic
+import RingTheory.PowerSeries.Basic
+import Data.Finsupp.Pwo
+import Data.Finset.MulAntidiagonal
+import Algebra.Order.Group.WithTop
#align_import ring_theory.hahn_series from "leanprover-community/mathlib"@"61db041ab8e4aaf8cb5c7dc10a7d4ff261997536"
mathlib commit https://github.com/leanprover-community/mathlib/commit/32a7e535287f9c73f2e4d2aef306a39190f0b504
@@ -611,7 +611,7 @@ instance : DistribMulAction R (HahnSeries Γ V)
one_smul _ := by ext; simp
smul_zero _ := by ext; simp
smul_add _ _ _ := by ext; simp [smul_add]
- mul_smul _ _ _ := by ext; simp [mul_smul]
+ hMul_smul _ _ _ := by ext; simp [mul_smul]
variable {S : Type _} [Monoid S] [DistribMulAction S V]
@@ -946,7 +946,7 @@ instance [NonUnitalSemiring R] : NonUnitalSemiring (HahnSeries Γ R) :=
zero := 0
add := (· + ·)
mul := (· * ·)
- mul_assoc := mul_assoc' }
+ mul_assoc := hMul_assoc' }
instance [NonAssocSemiring R] : NonAssocSemiring (HahnSeries Γ R) :=
{ AddMonoidWithOne.unary,
@@ -1825,7 +1825,7 @@ instance : Module (HahnSeries Γ R) (SummableFamily Γ R α)
one_smul x := ext fun a => one_mul _
add_smul x y s := ext fun a => add_mul _ _ _
smul_add x s t := ext fun a => mul_add _ _ _
- mul_smul x y s := ext fun a => mul_assoc _ _ _
+ hMul_smul x y s := ext fun a => mul_assoc _ _ _
#print HahnSeries.SummableFamily.hsum_smul /-
@[simp]
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,11 +2,6 @@
Copyright (c) 2021 Aaron Anderson. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Aaron Anderson
-
-! This file was ported from Lean 3 source module ring_theory.hahn_series
-! leanprover-community/mathlib commit 61db041ab8e4aaf8cb5c7dc10a7d4ff261997536
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.Order.WellFoundedSet
import Mathbin.Algebra.BigOperators.Finprod
@@ -16,6 +11,8 @@ import Mathbin.Data.Finsupp.Pwo
import Mathbin.Data.Finset.MulAntidiagonal
import Mathbin.Algebra.Order.Group.WithTop
+#align_import ring_theory.hahn_series from "leanprover-community/mathlib"@"61db041ab8e4aaf8cb5c7dc10a7d4ff261997536"
+
/-!
# Hahn Series
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -81,14 +81,18 @@ section Zero
variable [PartialOrder Γ] [Zero R]
+#print HahnSeries.coeff_injective /-
theorem coeff_injective : Injective (coeff : HahnSeries Γ R → Γ → R) :=
ext
#align hahn_series.coeff_injective HahnSeries.coeff_injective
+-/
+#print HahnSeries.coeff_inj /-
@[simp]
theorem coeff_inj {x y : HahnSeries Γ R} : x.coeff = y.coeff ↔ x = y :=
coeff_injective.eq_iff
#align hahn_series.coeff_inj HahnSeries.coeff_inj
+-/
#print HahnSeries.support /-
/-- The support of a Hahn series is just the set of indices whose coefficients are nonzero.
@@ -98,20 +102,26 @@ def support (x : HahnSeries Γ R) : Set Γ :=
#align hahn_series.support HahnSeries.support
-/
+#print HahnSeries.isPwo_support /-
@[simp]
theorem isPwo_support (x : HahnSeries Γ R) : x.support.IsPwo :=
x.isPwo_support'
#align hahn_series.is_pwo_support HahnSeries.isPwo_support
+-/
+#print HahnSeries.isWf_support /-
@[simp]
theorem isWf_support (x : HahnSeries Γ R) : x.support.IsWf :=
x.isPwo_support.IsWf
#align hahn_series.is_wf_support HahnSeries.isWf_support
+-/
+#print HahnSeries.mem_support /-
@[simp]
theorem mem_support (x : HahnSeries Γ R) (a : Γ) : a ∈ x.support ↔ x.coeff a ≠ 0 :=
Iff.refl _
#align hahn_series.mem_support HahnSeries.mem_support
+-/
instance : Zero (HahnSeries Γ R) :=
⟨{ coeff := 0
@@ -130,29 +140,39 @@ theorem zero_coeff {a : Γ} : (0 : HahnSeries Γ R).coeff a = 0 :=
#align hahn_series.zero_coeff HahnSeries.zero_coeff
-/
+#print HahnSeries.coeff_fun_eq_zero_iff /-
@[simp]
theorem coeff_fun_eq_zero_iff {x : HahnSeries Γ R} : x.coeff = 0 ↔ x = 0 :=
coeff_injective.eq_iff' rfl
#align hahn_series.coeff_fun_eq_zero_iff HahnSeries.coeff_fun_eq_zero_iff
+-/
+#print HahnSeries.ne_zero_of_coeff_ne_zero /-
theorem ne_zero_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g ≠ 0) : x ≠ 0 :=
mt (fun x0 => (x0.symm ▸ zero_coeff : x.coeff g = 0)) h
#align hahn_series.ne_zero_of_coeff_ne_zero HahnSeries.ne_zero_of_coeff_ne_zero
+-/
+#print HahnSeries.support_zero /-
@[simp]
theorem support_zero : support (0 : HahnSeries Γ R) = ∅ :=
Function.support_zero
#align hahn_series.support_zero HahnSeries.support_zero
+-/
+#print HahnSeries.support_nonempty_iff /-
@[simp]
theorem support_nonempty_iff {x : HahnSeries Γ R} : x.support.Nonempty ↔ x ≠ 0 := by
rw [support, support_nonempty_iff, Ne.def, coeff_fun_eq_zero_iff]
#align hahn_series.support_nonempty_iff HahnSeries.support_nonempty_iff
+-/
+#print HahnSeries.support_eq_empty_iff /-
@[simp]
theorem support_eq_empty_iff {x : HahnSeries Γ R} : x.support = ∅ ↔ x = 0 :=
support_eq_empty_iff.trans coeff_fun_eq_zero_iff
#align hahn_series.support_eq_empty_iff HahnSeries.support_eq_empty_iff
+-/
#print HahnSeries.single /-
/-- `single a r` is the Hahn series which has coefficient `r` at `a` and zero otherwise. -/
@@ -174,10 +194,12 @@ theorem single_coeff_same (a : Γ) (r : R) : (single a r).coeff a = r :=
#align hahn_series.single_coeff_same HahnSeries.single_coeff_same
-/
+#print HahnSeries.single_coeff_of_ne /-
@[simp]
theorem single_coeff_of_ne (h : b ≠ a) : (single a r).coeff b = 0 :=
Pi.single_eq_of_ne h r
#align hahn_series.single_coeff_of_ne HahnSeries.single_coeff_of_ne
+-/
#print HahnSeries.single_coeff /-
theorem single_coeff : (single a r).coeff b = if b = a then r else 0 := by
@@ -192,18 +214,24 @@ theorem support_single_of_ne (h : r ≠ 0) : support (single a r) = {a} :=
#align hahn_series.support_single_of_ne HahnSeries.support_single_of_ne
-/
+#print HahnSeries.support_single_subset /-
theorem support_single_subset : support (single a r) ⊆ {a} :=
Pi.support_single_subset
#align hahn_series.support_single_subset HahnSeries.support_single_subset
+-/
+#print HahnSeries.eq_of_mem_support_single /-
theorem eq_of_mem_support_single {b : Γ} (h : b ∈ support (single a r)) : b = a :=
support_single_subset h
#align hahn_series.eq_of_mem_support_single HahnSeries.eq_of_mem_support_single
+-/
+#print HahnSeries.single_eq_zero /-
@[simp]
theorem single_eq_zero : single a (0 : R) = 0 :=
(single a).map_zero
#align hahn_series.single_eq_zero HahnSeries.single_eq_zero
+-/
#print HahnSeries.single_injective /-
theorem single_injective (a : Γ) : Function.Injective (single a : R → HahnSeries Γ R) :=
@@ -217,6 +245,7 @@ theorem single_ne_zero (h : r ≠ 0) : single a r ≠ 0 := fun con =>
#align hahn_series.single_ne_zero HahnSeries.single_ne_zero
-/
+#print HahnSeries.single_eq_zero_iff /-
@[simp]
theorem single_eq_zero_iff {a : Γ} {r : R} : single a r = 0 ↔ r = 0 :=
by
@@ -225,6 +254,7 @@ theorem single_eq_zero_iff {a : Γ} {r : R} : single a r = 0 ↔ r = 0 :=
exact single_ne_zero
· simp (config := { contextual := true })
#align hahn_series.single_eq_zero_iff HahnSeries.single_eq_zero_iff
+-/
instance [Nonempty Γ] [Nontrivial R] : Nontrivial (HahnSeries Γ R) :=
⟨by
@@ -245,27 +275,35 @@ def order (x : HahnSeries Γ R) : Γ :=
#align hahn_series.order HahnSeries.order
-/
+#print HahnSeries.order_zero /-
@[simp]
theorem order_zero : order (0 : HahnSeries Γ R) = 0 :=
dif_pos rfl
#align hahn_series.order_zero HahnSeries.order_zero
+-/
+#print HahnSeries.order_of_ne /-
theorem order_of_ne {x : HahnSeries Γ R} (hx : x ≠ 0) :
order x = x.isWf_support.min (support_nonempty_iff.2 hx) :=
dif_neg hx
#align hahn_series.order_of_ne HahnSeries.order_of_ne
+-/
+#print HahnSeries.coeff_order_ne_zero /-
theorem coeff_order_ne_zero {x : HahnSeries Γ R} (hx : x ≠ 0) : x.coeff x.order ≠ 0 :=
by
rw [order_of_ne hx]
exact x.is_wf_support.min_mem (support_nonempty_iff.2 hx)
#align hahn_series.coeff_order_ne_zero HahnSeries.coeff_order_ne_zero
+-/
+#print HahnSeries.order_le_of_coeff_ne_zero /-
theorem order_le_of_coeff_ne_zero {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x : HahnSeries Γ R}
{g : Γ} (h : x.coeff g ≠ 0) : x.order ≤ g :=
le_trans (le_of_eq (order_of_ne (ne_zero_of_coeff_ne_zero h)))
(Set.IsWf.min_le _ _ ((mem_support _ _).2 h))
#align hahn_series.order_le_of_coeff_ne_zero HahnSeries.order_le_of_coeff_ne_zero
+-/
#print HahnSeries.order_single /-
@[simp]
@@ -276,6 +314,7 @@ theorem order_single (h : r ≠ 0) : (single a r).order = a :=
#align hahn_series.order_single HahnSeries.order_single
-/
+#print HahnSeries.coeff_eq_zero_of_lt_order /-
theorem coeff_eq_zero_of_lt_order {x : HahnSeries Γ R} {i : Γ} (hi : i < x.order) : x.coeff i = 0 :=
by
rcases eq_or_ne x 0 with (rfl | hx)
@@ -285,6 +324,7 @@ theorem coeff_eq_zero_of_lt_order {x : HahnSeries Γ R} {i : Γ} (hi : i < x.ord
rw [order_of_ne hx]
exact Set.IsWf.not_lt_min _ _ hi
#align hahn_series.coeff_eq_zero_of_lt_order HahnSeries.coeff_eq_zero_of_lt_order
+-/
end Order
@@ -304,6 +344,7 @@ def embDomain (f : Γ ↪o Γ') : HahnSeries Γ R → HahnSeries Γ' R := fun x
#align hahn_series.emb_domain HahnSeries.embDomain
-/
+#print HahnSeries.embDomain_coeff /-
@[simp]
theorem embDomain_coeff {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {a : Γ} :
(embDomain f x).coeff (f a) = x.coeff a :=
@@ -318,19 +359,25 @@ theorem embDomain_coeff {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {a : Γ} :
obtain ⟨b, hb1, hb2⟩ := (Set.mem_image _ _ _).1 ha
rwa [f.injective hb2] at hb1
#align hahn_series.emb_domain_coeff HahnSeries.embDomain_coeff
+-/
+#print HahnSeries.embDomain_mk_coeff /-
@[simp]
theorem embDomain_mk_coeff {f : Γ → Γ'} (hfi : Function.Injective f)
(hf : ∀ g g' : Γ, f g ≤ f g' ↔ g ≤ g') {x : HahnSeries Γ R} {a : Γ} :
(embDomain ⟨⟨f, hfi⟩, hf⟩ x).coeff (f a) = x.coeff a :=
embDomain_coeff
#align hahn_series.emb_domain_mk_coeff HahnSeries.embDomain_mk_coeff
+-/
+#print HahnSeries.embDomain_notin_image_support /-
theorem embDomain_notin_image_support {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {b : Γ'}
(hb : b ∉ f '' x.support) : (embDomain f x).coeff b = 0 :=
dif_neg hb
#align hahn_series.emb_domain_notin_image_support HahnSeries.embDomain_notin_image_support
+-/
+#print HahnSeries.support_embDomain_subset /-
theorem support_embDomain_subset {f : Γ ↪o Γ'} {x : HahnSeries Γ R} :
support (embDomain f x) ⊆ f '' x.support :=
by
@@ -338,17 +385,23 @@ theorem support_embDomain_subset {f : Γ ↪o Γ'} {x : HahnSeries Γ R} :
contrapose! hg
rw [mem_support, emb_domain_notin_image_support hg, Classical.not_not]
#align hahn_series.support_emb_domain_subset HahnSeries.support_embDomain_subset
+-/
+#print HahnSeries.embDomain_notin_range /-
theorem embDomain_notin_range {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {b : Γ'} (hb : b ∉ Set.range f) :
(embDomain f x).coeff b = 0 :=
embDomain_notin_image_support fun con => hb (Set.image_subset_range _ _ Con)
#align hahn_series.emb_domain_notin_range HahnSeries.embDomain_notin_range
+-/
+#print HahnSeries.embDomain_zero /-
@[simp]
theorem embDomain_zero {f : Γ ↪o Γ'} : embDomain f (0 : HahnSeries Γ R) = 0 := by ext;
simp [emb_domain_notin_image_support]
#align hahn_series.emb_domain_zero HahnSeries.embDomain_zero
+-/
+#print HahnSeries.embDomain_single /-
@[simp]
theorem embDomain_single {f : Γ ↪o Γ'} {g : Γ} {r : R} :
embDomain f (single g r) = single (f g) r :=
@@ -361,7 +414,9 @@ theorem embDomain_single {f : Γ ↪o Γ'} {g : Γ} {r : R} :
· simp [hr]
rwa [support_single_of_ne hr, Set.image_singleton, Set.mem_singleton_iff]
#align hahn_series.emb_domain_single HahnSeries.embDomain_single
+-/
+#print HahnSeries.embDomain_injective /-
theorem embDomain_injective {f : Γ ↪o Γ'} :
Function.Injective (embDomain f : HahnSeries Γ R → HahnSeries Γ' R) := fun x y xy =>
by
@@ -370,6 +425,7 @@ theorem embDomain_injective {f : Γ ↪o Γ'} :
have xyg := xy (f g)
rwa [emb_domain_coeff, emb_domain_coeff] at xyg
#align hahn_series.emb_domain_injective HahnSeries.embDomain_injective
+-/
end Domain
@@ -395,15 +451,20 @@ instance : AddMonoid (HahnSeries Γ R) where
zero_add x := by ext; apply zero_add
add_zero x := by ext; apply add_zero
+#print HahnSeries.add_coeff' /-
@[simp]
theorem add_coeff' {x y : HahnSeries Γ R} : (x + y).coeff = x.coeff + y.coeff :=
rfl
#align hahn_series.add_coeff' HahnSeries.add_coeff'
+-/
+#print HahnSeries.add_coeff /-
theorem add_coeff {x y : HahnSeries Γ R} {a : Γ} : (x + y).coeff a = x.coeff a + y.coeff a :=
rfl
#align hahn_series.add_coeff HahnSeries.add_coeff
+-/
+#print HahnSeries.support_add_subset /-
theorem support_add_subset {x y : HahnSeries Γ R} : support (x + y) ⊆ support x ∪ support y :=
fun a ha => by
rw [mem_support, add_coeff] at ha
@@ -411,7 +472,9 @@ theorem support_add_subset {x y : HahnSeries Γ R} : support (x + y) ⊆ support
contrapose! ha
rw [ha.1, ha.2, add_zero]
#align hahn_series.support_add_subset HahnSeries.support_add_subset
+-/
+#print HahnSeries.min_order_le_order_add /-
theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y : HahnSeries Γ R}
(hxy : x + y ≠ 0) : min x.order y.order ≤ (x + y).order :=
by
@@ -423,13 +486,17 @@ theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y :
· exact Set.Nonempty.mono (Set.subset_union_left _ _) (support_nonempty_iff.2 hx)
rw [Set.IsWf.min_union]
#align hahn_series.min_order_le_order_add HahnSeries.min_order_le_order_add
+-/
+#print HahnSeries.single.addMonoidHom /-
/-- `single` as an additive monoid/group homomorphism -/
@[simps]
def single.addMonoidHom (a : Γ) : R →+ HahnSeries Γ R :=
{ single a with map_add' := fun x y => by ext b; by_cases h : b = a <;> simp [h] }
#align hahn_series.single.add_monoid_hom HahnSeries.single.addMonoidHom
+-/
+#print HahnSeries.coeff.addMonoidHom /-
/-- `coeff g` as an additive monoid/group homomorphism -/
@[simps]
def coeff.addMonoidHom (g : Γ) : HahnSeries Γ R →+ R
@@ -438,11 +505,13 @@ def coeff.addMonoidHom (g : Γ) : HahnSeries Γ R →+ R
map_zero' := zero_coeff
map_add' x y := add_coeff
#align hahn_series.coeff.add_monoid_hom HahnSeries.coeff.addMonoidHom
+-/
section Domain
variable {Γ' : Type _} [PartialOrder Γ']
+#print HahnSeries.embDomain_add /-
theorem embDomain_add (f : Γ ↪o Γ') (x y : HahnSeries Γ R) :
embDomain f (x + y) = embDomain f x + embDomain f y :=
by
@@ -452,6 +521,7 @@ theorem embDomain_add (f : Γ ↪o Γ') (x y : HahnSeries Γ R) :
simp
· simp [emb_domain_notin_range, hg]
#align hahn_series.emb_domain_add HahnSeries.embDomain_add
+-/
end Domain
@@ -474,34 +544,46 @@ instance : AddGroup (HahnSeries Γ R) :=
exact x.is_pwo_support }
add_left_neg := fun x => by ext; apply add_left_neg }
+#print HahnSeries.neg_coeff' /-
@[simp]
theorem neg_coeff' {x : HahnSeries Γ R} : (-x).coeff = -x.coeff :=
rfl
#align hahn_series.neg_coeff' HahnSeries.neg_coeff'
+-/
+#print HahnSeries.neg_coeff /-
theorem neg_coeff {x : HahnSeries Γ R} {a : Γ} : (-x).coeff a = -x.coeff a :=
rfl
#align hahn_series.neg_coeff HahnSeries.neg_coeff
+-/
+#print HahnSeries.support_neg /-
@[simp]
theorem support_neg {x : HahnSeries Γ R} : (-x).support = x.support := by ext; simp
#align hahn_series.support_neg HahnSeries.support_neg
+-/
+#print HahnSeries.sub_coeff' /-
@[simp]
theorem sub_coeff' {x y : HahnSeries Γ R} : (x - y).coeff = x.coeff - y.coeff := by ext;
simp [sub_eq_add_neg]
#align hahn_series.sub_coeff' HahnSeries.sub_coeff'
+-/
+#print HahnSeries.sub_coeff /-
theorem sub_coeff {x y : HahnSeries Γ R} {a : Γ} : (x - y).coeff a = x.coeff a - y.coeff a := by
simp
#align hahn_series.sub_coeff HahnSeries.sub_coeff
+-/
+#print HahnSeries.order_neg /-
@[simp]
theorem order_neg [Zero Γ] {f : HahnSeries Γ R} : (-f).order = f.order :=
by
by_cases hf : f = 0; · simp only [hf, neg_zero]
simp only [order, support_neg, neg_eq_zero]
#align hahn_series.order_neg HahnSeries.order_neg
+-/
end AddGroup
@@ -519,10 +601,12 @@ instance : SMul R (HahnSeries Γ V) :=
{ coeff := r • x.coeff
isPwo_support' := x.isPwo_support.mono (Function.support_smul_subset_right r x.coeff) }⟩
+#print HahnSeries.smul_coeff /-
@[simp]
theorem smul_coeff {r : R} {x : HahnSeries Γ V} {a : Γ} : (r • x).coeff a = r • x.coeff a :=
rfl
#align hahn_series.smul_coeff HahnSeries.smul_coeff
+-/
instance : DistribMulAction R (HahnSeries Γ V)
where
@@ -552,22 +636,27 @@ instance : Module R (HahnSeries Γ V) :=
zero_smul := fun _ => by ext; simp
add_smul := fun _ _ _ => by ext; simp [add_smul] }
+#print HahnSeries.single.linearMap /-
/-- `single` as a linear map -/
@[simps]
def single.linearMap (a : Γ) : R →ₗ[R] HahnSeries Γ R :=
{ single.addMonoidHom a with map_smul' := fun r s => by ext b; by_cases h : b = a <;> simp [h] }
#align hahn_series.single.linear_map HahnSeries.single.linearMap
+-/
+#print HahnSeries.coeff.linearMap /-
/-- `coeff g` as a linear map -/
@[simps]
def coeff.linearMap (g : Γ) : HahnSeries Γ R →ₗ[R] R :=
{ coeff.addMonoidHom g with map_smul' := fun r s => rfl }
#align hahn_series.coeff.linear_map HahnSeries.coeff.linearMap
+-/
section Domain
variable {Γ' : Type _} [PartialOrder Γ']
+#print HahnSeries.embDomain_smul /-
theorem embDomain_smul (f : Γ ↪o Γ') (r : R) (x : HahnSeries Γ R) :
embDomain f (r • x) = r • embDomain f x := by
ext g
@@ -576,7 +665,9 @@ theorem embDomain_smul (f : Γ ↪o Γ') (r : R) (x : HahnSeries Γ R) :
simp
· simp [emb_domain_notin_range, hg]
#align hahn_series.emb_domain_smul HahnSeries.embDomain_smul
+-/
+#print HahnSeries.embDomainLinearMap /-
/-- Extending the domain of Hahn series is a linear map. -/
@[simps]
def embDomainLinearMap (f : Γ ↪o Γ') : HahnSeries Γ R →ₗ[R] HahnSeries Γ' R
@@ -585,6 +676,7 @@ def embDomainLinearMap (f : Γ ↪o Γ') : HahnSeries Γ R →ₗ[R] HahnSeries
map_add' := embDomain_add f
map_smul' := embDomain_smul f
#align hahn_series.emb_domain_linear_map HahnSeries.embDomainLinearMap
+-/
end Domain
@@ -597,22 +689,29 @@ variable [OrderedCancelAddCommMonoid Γ]
instance [Zero R] [One R] : One (HahnSeries Γ R) :=
⟨single 0 1⟩
+#print HahnSeries.one_coeff /-
@[simp]
theorem one_coeff [Zero R] [One R] {a : Γ} :
(1 : HahnSeries Γ R).coeff a = if a = 0 then 1 else 0 :=
single_coeff
#align hahn_series.one_coeff HahnSeries.one_coeff
+-/
+#print HahnSeries.single_zero_one /-
@[simp]
theorem single_zero_one [Zero R] [One R] : single 0 (1 : R) = 1 :=
rfl
#align hahn_series.single_zero_one HahnSeries.single_zero_one
+-/
+#print HahnSeries.support_one /-
@[simp]
theorem support_one [MulZeroOneClass R] [Nontrivial R] : support (1 : HahnSeries Γ R) = {0} :=
support_single_of_ne one_ne_zero
#align hahn_series.support_one HahnSeries.support_one
+-/
+#print HahnSeries.order_one /-
@[simp]
theorem order_one [MulZeroOneClass R] : order (1 : HahnSeries Γ R) = 0 :=
by
@@ -620,6 +719,7 @@ theorem order_one [MulZeroOneClass R] : order (1 : HahnSeries Γ R) = 0 :=
· rw [Subsingleton.elim (1 : HahnSeries Γ R) 0, order_zero]
· exact order_single one_ne_zero
#align hahn_series.order_one HahnSeries.order_one
+-/
instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R)
where mul x y :=
@@ -638,13 +738,16 @@ instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R)
simp [not_nonempty_iff_eq_empty.1 ha]
is_pwo_support_add_antidiagonal.mono h }
+#print HahnSeries.mul_coeff /-
@[simp]
theorem mul_coeff [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} :
(x * y).coeff a =
∑ ij in addAntidiagonal x.isPwo_support y.isPwo_support a, x.coeff ij.fst * y.coeff ij.snd :=
rfl
#align hahn_series.mul_coeff HahnSeries.mul_coeff
+-/
+#print HahnSeries.mul_coeff_right' /-
theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
(hs : s.IsPwo) (hys : y.support ⊆ s) :
(x * y).coeff a =
@@ -656,7 +759,9 @@ theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {
simp only [not_and, mem_sdiff, mem_add_antidiagonal, mem_support, not_imp_not] at hb
rw [hb.2 hb.1.1 hb.1.2.2, MulZeroClass.mul_zero]
#align hahn_series.mul_coeff_right' HahnSeries.mul_coeff_right'
+-/
+#print HahnSeries.mul_coeff_left' /-
theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
(hs : s.IsPwo) (hxs : x.support ⊆ s) :
(x * y).coeff a =
@@ -668,6 +773,7 @@ theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a
simp only [not_and', mem_sdiff, mem_add_antidiagonal, mem_support, not_ne_iff] at hb
rw [hb.2 ⟨hb.1.2.1, hb.1.2.2⟩, MulZeroClass.zero_mul]
#align hahn_series.mul_coeff_left' HahnSeries.mul_coeff_left'
+-/
instance [NonUnitalNonAssocSemiring R] : Distrib (HahnSeries Γ R) :=
{ HahnSeries.hasMul,
@@ -695,6 +801,7 @@ instance [NonUnitalNonAssocSemiring R] : Distrib (HahnSeries Γ R) :=
intro h
rw [h.1, h.2, add_zero] }
+#print HahnSeries.single_mul_coeff_add /-
theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ}
{b : Γ} : (single b r * x).coeff (a + b) = r * x.coeff a :=
by
@@ -724,7 +831,9 @@ theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
exact ⟨rfl, by simp [hx], add_comm _ _⟩
· simp
#align hahn_series.single_mul_coeff_add HahnSeries.single_mul_coeff_add
+-/
+#print HahnSeries.mul_single_coeff_add /-
theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ}
{b : Γ} : (x * single b r).coeff (a + b) = x.coeff a * r :=
by
@@ -752,21 +861,29 @@ theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
simp [hx]
· simp
#align hahn_series.mul_single_coeff_add HahnSeries.mul_single_coeff_add
+-/
+#print HahnSeries.mul_single_zero_coeff /-
@[simp]
theorem mul_single_zero_coeff [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ} :
(x * single 0 r).coeff a = x.coeff a * r := by rw [← add_zero a, mul_single_coeff_add, add_zero]
#align hahn_series.mul_single_zero_coeff HahnSeries.mul_single_zero_coeff
+-/
+#print HahnSeries.single_zero_mul_coeff /-
theorem single_zero_mul_coeff [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ} :
(single 0 r * x).coeff a = r * x.coeff a := by rw [← add_zero a, single_mul_coeff_add, add_zero]
#align hahn_series.single_zero_mul_coeff HahnSeries.single_zero_mul_coeff
+-/
+#print HahnSeries.single_zero_mul_eq_smul /-
@[simp]
theorem single_zero_mul_eq_smul [Semiring R] {r : R} {x : HahnSeries Γ R} :
single 0 r * x = r • x := by ext; exact single_zero_mul_coeff
#align hahn_series.single_zero_mul_eq_smul HahnSeries.single_zero_mul_eq_smul
+-/
+#print HahnSeries.support_mul_subset_add_support /-
theorem support_mul_subset_add_support [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} :
support (x * y) ⊆ support x + support y :=
by
@@ -777,7 +894,9 @@ theorem support_mul_subset_add_support [NonUnitalNonAssocSemiring R] {x y : Hahn
simp only [not_nonempty_iff_eq_empty, Ne.def, Set.mem_setOf_eq] at hx
simp [hx]
#align hahn_series.support_mul_subset_add_support HahnSeries.support_mul_subset_add_support
+-/
+#print HahnSeries.mul_coeff_order_add_order /-
theorem mul_coeff_order_add_order {Γ} [LinearOrderedCancelAddCommMonoid Γ]
[NonUnitalNonAssocSemiring R] (x y : HahnSeries Γ R) :
(x * y).coeff (x.order + y.order) = x.coeff x.order * y.coeff y.order :=
@@ -787,6 +906,7 @@ theorem mul_coeff_order_add_order {Γ} [LinearOrderedCancelAddCommMonoid Γ]
rw [order_of_ne hx, order_of_ne hy, mul_coeff, Finset.addAntidiagonal_min_add_min,
Finset.sum_singleton]
#align hahn_series.mul_coeff_order_add_order HahnSeries.mul_coeff_order_add_order
+-/
private theorem mul_assoc' [NonUnitalSemiring R] (x y z : HahnSeries Γ R) :
x * y * z = x * (y * z) := by
@@ -897,6 +1017,7 @@ instance {Γ} [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R] :
IsDomain (HahnSeries Γ R) :=
NoZeroDivisors.to_isDomain _
+#print HahnSeries.order_mul /-
@[simp]
theorem order_mul {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocSemiring R]
[NoZeroDivisors R] {x y : HahnSeries Γ R} (hx : x ≠ 0) (hy : y ≠ 0) :
@@ -908,7 +1029,9 @@ theorem order_mul {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocS
· rw [order_of_ne hx, order_of_ne hy, order_of_ne (mul_ne_zero hx hy), ← Set.IsWf.min_add]
exact Set.IsWf.min_le_min_of_subset support_mul_subset_add_support
#align hahn_series.order_mul HahnSeries.order_mul
+-/
+#print HahnSeries.order_pow /-
@[simp]
theorem order_pow {Γ} [LinearOrderedCancelAddCommMonoid Γ] [Semiring R] [NoZeroDivisors R]
(x : HahnSeries Γ R) (n : ℕ) : (x ^ n).order = n • x.order :=
@@ -919,11 +1042,13 @@ theorem order_pow {Γ} [LinearOrderedCancelAddCommMonoid Γ] [Semiring R] [NoZer
· simp
rw [pow_succ', order_mul (pow_ne_zero _ hx) hx, succ_nsmul', IH]
#align hahn_series.order_pow HahnSeries.order_pow
+-/
section NonUnitalNonAssocSemiring
variable [NonUnitalNonAssocSemiring R]
+#print HahnSeries.single_mul_single /-
@[simp]
theorem single_mul_single {a b : Γ} {r s : R} : single a r * single b s = single (a + b) (r * s) :=
by
@@ -937,6 +1062,7 @@ theorem single_mul_single {a b : Γ} {r s : R} : single a r * single b s = singl
rw [eq_of_mem_support_single hy, eq_of_mem_support_single hz] at h
exact (h rfl).elim
#align hahn_series.single_mul_single HahnSeries.single_mul_single
+-/
end NonUnitalNonAssocSemiring
@@ -944,6 +1070,7 @@ section NonAssocSemiring
variable [NonAssocSemiring R]
+#print HahnSeries.C /-
/-- `C a` is the constant Hahn Series `a`. `C` is provided as a ring homomorphism. -/
@[simps]
def C : R →+* HahnSeries Γ R where
@@ -953,17 +1080,23 @@ def C : R →+* HahnSeries Γ R where
map_add' x y := by ext a; by_cases h : a = 0 <;> simp [h]
map_mul' x y := by rw [single_mul_single, zero_add]
#align hahn_series.C HahnSeries.C
+-/
+#print HahnSeries.C_zero /-
@[simp]
theorem C_zero : C (0 : R) = (0 : HahnSeries Γ R) :=
C.map_zero
#align hahn_series.C_zero HahnSeries.C_zero
+-/
+#print HahnSeries.C_one /-
@[simp]
theorem C_one : C (1 : R) = (1 : HahnSeries Γ R) :=
C.map_one
#align hahn_series.C_one HahnSeries.C_one
+-/
+#print HahnSeries.C_injective /-
theorem C_injective : Function.Injective (C : R → HahnSeries Γ R) :=
by
intro r s rs
@@ -971,20 +1104,25 @@ theorem C_injective : Function.Injective (C : R → HahnSeries Γ R) :=
have h := rs 0
rwa [C_apply, single_coeff_same, C_apply, single_coeff_same] at h
#align hahn_series.C_injective HahnSeries.C_injective
+-/
+#print HahnSeries.C_ne_zero /-
theorem C_ne_zero {r : R} (h : r ≠ 0) : (C r : HahnSeries Γ R) ≠ 0 :=
by
contrapose! h
rw [← C_zero] at h
exact C_injective h
#align hahn_series.C_ne_zero HahnSeries.C_ne_zero
+-/
+#print HahnSeries.order_C /-
theorem order_C {r : R} : order (C r : HahnSeries Γ R) = 0 :=
by
by_cases h : r = 0
· rw [h, C_zero, order_zero]
· exact order_single h
#align hahn_series.order_C HahnSeries.order_C
+-/
end NonAssocSemiring
@@ -992,9 +1130,11 @@ section Semiring
variable [Semiring R]
+#print HahnSeries.C_mul_eq_smul /-
theorem C_mul_eq_smul {r : R} {x : HahnSeries Γ R} : C r * x = r • x :=
single_zero_mul_eq_smul
#align hahn_series.C_mul_eq_smul HahnSeries.C_mul_eq_smul
+-/
end Semiring
@@ -1002,6 +1142,7 @@ section Domain
variable {Γ' : Type _} [OrderedCancelAddCommMonoid Γ']
+#print HahnSeries.embDomain_mul /-
theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
(hf : ∀ x y, f (x + y) = f x + f y) (x y : HahnSeries Γ R) :
embDomain f (x * y) = embDomain f x * embDomain f y :=
@@ -1038,12 +1179,16 @@ theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
obtain ⟨j, hj, rfl⟩ := support_emb_domain_subset hj
refine' ⟨i + j, hf i j⟩
#align hahn_series.emb_domain_mul HahnSeries.embDomain_mul
+-/
+#print HahnSeries.embDomain_one /-
theorem embDomain_one [NonAssocSemiring R] (f : Γ ↪o Γ') (hf : f 0 = 0) :
embDomain f (1 : HahnSeries Γ R) = (1 : HahnSeries Γ' R) :=
embDomain_single.trans <| hf.symm ▸ rfl
#align hahn_series.emb_domain_one HahnSeries.embDomain_one
+-/
+#print HahnSeries.embDomainRingHom /-
/-- Extending the domain of Hahn series is a ring homomorphism. -/
@[simps]
def embDomainRingHom [NonAssocSemiring R] (f : Γ →+ Γ') (hfi : Function.Injective f)
@@ -1055,11 +1200,14 @@ def embDomainRingHom [NonAssocSemiring R] (f : Γ →+ Γ') (hfi : Function.Inje
map_zero' := embDomain_zero
map_add' := embDomain_add _
#align hahn_series.emb_domain_ring_hom HahnSeries.embDomainRingHom
+-/
+#print HahnSeries.embDomainRingHom_C /-
theorem embDomainRingHom_C [NonAssocSemiring R] {f : Γ →+ Γ'} {hfi : Function.Injective f}
{hf : ∀ g g' : Γ, f g ≤ f g' ↔ g ≤ g'} {r : R} : embDomainRingHom f hfi hf (C r) = C r :=
embDomain_single.trans (by simp)
#align hahn_series.emb_domain_ring_hom_C HahnSeries.embDomainRingHom_C
+-/
end Domain
@@ -1077,13 +1225,17 @@ instance : Algebra R (HahnSeries Γ A)
Function.comp_apply, algebraMap_smul, mul_single_zero_coeff]
rw [← Algebra.commutes, Algebra.smul_def]
+#print HahnSeries.C_eq_algebraMap /-
theorem C_eq_algebraMap : C = algebraMap R (HahnSeries Γ R) :=
rfl
#align hahn_series.C_eq_algebra_map HahnSeries.C_eq_algebraMap
+-/
+#print HahnSeries.algebraMap_apply /-
theorem algebraMap_apply {r : R} : algebraMap R (HahnSeries Γ A) r = C (algebraMap R A r) :=
rfl
#align hahn_series.algebra_map_apply HahnSeries.algebraMap_apply
+-/
instance [Nontrivial Γ] [Nontrivial R] : Nontrivial (Subalgebra R (HahnSeries Γ R)) :=
⟨⟨⊥, ⊤, by
@@ -1101,12 +1253,14 @@ section Domain
variable {Γ' : Type _} [OrderedCancelAddCommMonoid Γ']
+#print HahnSeries.embDomainAlgHom /-
/-- Extending the domain of Hahn series is an algebra homomorphism. -/
@[simps]
def embDomainAlgHom (f : Γ →+ Γ') (hfi : Function.Injective f)
(hf : ∀ g g' : Γ, f g ≤ f g' ↔ g ≤ g') : HahnSeries Γ A →ₐ[R] HahnSeries Γ' A :=
{ embDomainRingHom f hfi hf with commutes' := fun r => embDomainRingHom_C }
#align hahn_series.emb_domain_alg_hom HahnSeries.embDomainAlgHom
+-/
end Domain
@@ -1118,6 +1272,7 @@ section Semiring
variable [Semiring R]
+#print HahnSeries.toPowerSeries /-
/-- The ring `hahn_series ℕ R` is isomorphic to `power_series R`. -/
@[simps]
def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
@@ -1138,32 +1293,42 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
rintro h
rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_power_series HahnSeries.toPowerSeries
+-/
+#print HahnSeries.coeff_toPowerSeries /-
theorem coeff_toPowerSeries {f : HahnSeries ℕ R} {n : ℕ} :
PowerSeries.coeff R n f.toPowerSeries = f.coeff n :=
PowerSeries.coeff_mk _ _
#align hahn_series.coeff_to_power_series HahnSeries.coeff_toPowerSeries
+-/
+#print HahnSeries.coeff_toPowerSeries_symm /-
theorem coeff_toPowerSeries_symm {f : PowerSeries R} {n : ℕ} :
(HahnSeries.toPowerSeries.symm f).coeff n = PowerSeries.coeff R n f :=
rfl
#align hahn_series.coeff_to_power_series_symm HahnSeries.coeff_toPowerSeries_symm
+-/
variable (Γ R) [StrictOrderedSemiring Γ]
+#print HahnSeries.ofPowerSeries /-
/-- Casts a power series as a Hahn series with coefficients from an `strict_ordered_semiring`. -/
def ofPowerSeries : PowerSeries R →+* HahnSeries Γ R :=
(HahnSeries.embDomainRingHom (Nat.castAddMonoidHom Γ) Nat.strictMono_cast.Injective fun _ _ =>
Nat.cast_le).comp
(RingEquiv.toRingHom toPowerSeries.symm)
#align hahn_series.of_power_series HahnSeries.ofPowerSeries
+-/
variable {Γ} {R}
+#print HahnSeries.ofPowerSeries_injective /-
theorem ofPowerSeries_injective : Function.Injective (ofPowerSeries Γ R) :=
embDomain_injective.comp toPowerSeries.symm.Injective
#align hahn_series.of_power_series_injective HahnSeries.ofPowerSeries_injective
+-/
+#print HahnSeries.ofPowerSeries_apply /-
@[simp]
theorem ofPowerSeries_apply (x : PowerSeries R) :
ofPowerSeries Γ R x =
@@ -1175,11 +1340,15 @@ theorem ofPowerSeries_apply (x : PowerSeries R) :
(toPowerSeries.symm x) :=
rfl
#align hahn_series.of_power_series_apply HahnSeries.ofPowerSeries_apply
+-/
+#print HahnSeries.ofPowerSeries_apply_coeff /-
theorem ofPowerSeries_apply_coeff (x : PowerSeries R) (n : ℕ) :
(ofPowerSeries Γ R x).coeff n = PowerSeries.coeff R n x := by simp
#align hahn_series.of_power_series_apply_coeff HahnSeries.ofPowerSeries_apply_coeff
+-/
+#print HahnSeries.ofPowerSeries_C /-
@[simp]
theorem ofPowerSeries_C (r : R) : ofPowerSeries Γ R (PowerSeries.C R r) = HahnSeries.C r :=
by
@@ -1194,7 +1363,9 @@ theorem ofPowerSeries_C (r : R) : ofPowerSeries Γ R (PowerSeries.C R r) = HahnS
intro
simp (config := { contextual := true }) [Ne.symm hn]
#align hahn_series.of_power_series_C HahnSeries.ofPowerSeries_C
+-/
+#print HahnSeries.ofPowerSeries_X /-
@[simp]
theorem ofPowerSeries_X : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
by
@@ -1209,7 +1380,9 @@ theorem ofPowerSeries_X : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
intro
simp (config := { contextual := true }) [Ne.symm hn]
#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_X
+-/
+#print HahnSeries.ofPowerSeries_X_pow /-
@[simp]
theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
ofPowerSeries Γ R (PowerSeries.X ^ n) = single (n : Γ) 1 :=
@@ -1219,7 +1392,9 @@ theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
· simp; rfl
rw [pow_succ, ih, of_power_series_X, mul_comm, single_mul_single, one_mul, Nat.cast_succ]
#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_pow
+-/
+#print HahnSeries.toMvPowerSeries /-
-- Lemmas about converting hahn_series over fintype to and from mv_power_series
/-- The ring `hahn_series (σ →₀ ℕ) R` is isomorphic to `mv_power_series σ R` for a `fintype` `σ`.
We take the index set of the hahn series to be `finsupp` rather than `pi`,
@@ -1247,18 +1422,23 @@ def toMvPowerSeries {σ : Type _} [Fintype σ] : HahnSeries (σ →₀ ℕ) R
rintro h
rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_mv_power_series HahnSeries.toMvPowerSeries
+-/
variable {σ : Type _} [Fintype σ]
+#print HahnSeries.coeff_toMvPowerSeries /-
theorem coeff_toMvPowerSeries {f : HahnSeries (σ →₀ ℕ) R} {n : σ →₀ ℕ} :
MvPowerSeries.coeff R n f.toMvPowerSeries = f.coeff n :=
rfl
#align hahn_series.coeff_to_mv_power_series HahnSeries.coeff_toMvPowerSeries
+-/
+#print HahnSeries.coeff_toMvPowerSeries_symm /-
theorem coeff_toMvPowerSeries_symm {f : MvPowerSeries σ R} {n : σ →₀ ℕ} :
(HahnSeries.toMvPowerSeries.symm f).coeff n = MvPowerSeries.coeff R n f :=
rfl
#align hahn_series.coeff_to_mv_power_series_symm HahnSeries.coeff_toMvPowerSeries_symm
+-/
end Semiring
@@ -1266,6 +1446,7 @@ section Algebra
variable (R) [CommSemiring R] {A : Type _} [Semiring A] [Algebra R A]
+#print HahnSeries.toPowerSeriesAlg /-
/-- The `R`-algebra `hahn_series ℕ A` is isomorphic to `power_series A`. -/
@[simps]
def toPowerSeriesAlg : HahnSeries ℕ A ≃ₐ[R] PowerSeries A :=
@@ -1280,9 +1461,11 @@ def toPowerSeriesAlg : HahnSeries ℕ A ≃ₐ[R] PowerSeries A :=
· simp only [n.succ_ne_zero, Ne.def, not_false_iff, single_coeff_of_ne]
rw [PowerSeries.coeff_C, if_neg n.succ_ne_zero] }
#align hahn_series.to_power_series_alg HahnSeries.toPowerSeriesAlg
+-/
variable (Γ R) [StrictOrderedSemiring Γ]
+#print HahnSeries.ofPowerSeriesAlg /-
/-- Casting a power series as a Hahn series with coefficients from an `strict_ordered_semiring`
is an algebra homomorphism. -/
@[simps]
@@ -1291,29 +1474,38 @@ def ofPowerSeriesAlg : PowerSeries A →ₐ[R] HahnSeries Γ A :=
Nat.cast_le).comp
(AlgEquiv.toAlgHom (toPowerSeriesAlg R).symm)
#align hahn_series.of_power_series_alg HahnSeries.ofPowerSeriesAlg
+-/
+#print HahnSeries.powerSeriesAlgebra /-
instance powerSeriesAlgebra {S : Type _} [CommSemiring S] [Algebra S (PowerSeries R)] :
Algebra S (HahnSeries Γ R) :=
RingHom.toAlgebra <| (ofPowerSeries Γ R).comp (algebraMap S (PowerSeries R))
#align hahn_series.power_series_algebra HahnSeries.powerSeriesAlgebra
+-/
variable {R} {S : Type _} [CommSemiring S] [Algebra S (PowerSeries R)]
+#print HahnSeries.algebraMap_apply' /-
theorem algebraMap_apply' (x : S) :
algebraMap S (HahnSeries Γ R) x = ofPowerSeries Γ R (algebraMap S (PowerSeries R) x) :=
rfl
#align hahn_series.algebra_map_apply' HahnSeries.algebraMap_apply'
+-/
+#print Polynomial.algebraMap_hahnSeries_apply /-
@[simp]
theorem Polynomial.algebraMap_hahnSeries_apply (f : R[X]) :
algebraMap R[X] (HahnSeries Γ R) f = ofPowerSeries Γ R f :=
rfl
#align polynomial.algebra_map_hahn_series_apply Polynomial.algebraMap_hahnSeries_apply
+-/
+#print Polynomial.algebraMap_hahnSeries_injective /-
theorem Polynomial.algebraMap_hahnSeries_injective :
Function.Injective (algebraMap R[X] (HahnSeries Γ R)) :=
ofPowerSeries_injective.comp (Polynomial.coe_injective R)
#align polynomial.algebra_map_hahn_series_injective Polynomial.algebraMap_hahnSeries_injective
+-/
end Algebra
@@ -1321,6 +1513,7 @@ section Valuation
variable (Γ R) [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
+#print HahnSeries.addVal /-
/-- The additive valuation on `hahn_series Γ R`, returning the smallest index at which
a Hahn Series has a nonzero coefficient, or `⊤` for the 0 series. -/
def addVal : AddValuation (HahnSeries Γ R) (WithTop Γ) :=
@@ -1344,28 +1537,36 @@ def addVal : AddValuation (HahnSeries Γ R) (WithTop Γ) :=
rw [if_neg hx, if_neg hy, if_neg (mul_ne_zero hx hy), ← WithTop.coe_add, WithTop.coe_eq_coe,
order_mul hx hy]
#align hahn_series.add_val HahnSeries.addVal
+-/
variable {Γ} {R}
+#print HahnSeries.addVal_apply /-
theorem addVal_apply {x : HahnSeries Γ R} :
addVal Γ R x = if x = (0 : HahnSeries Γ R) then (⊤ : WithTop Γ) else x.order :=
AddValuation.of_apply _
#align hahn_series.add_val_apply HahnSeries.addVal_apply
+-/
+#print HahnSeries.addVal_apply_of_ne /-
@[simp]
theorem addVal_apply_of_ne {x : HahnSeries Γ R} (hx : x ≠ 0) : addVal Γ R x = x.order :=
if_neg hx
#align hahn_series.add_val_apply_of_ne HahnSeries.addVal_apply_of_ne
+-/
+#print HahnSeries.addVal_le_of_coeff_ne_zero /-
theorem addVal_le_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g ≠ 0) :
addVal Γ R x ≤ g :=
by
rw [add_val_apply_of_ne (ne_zero_of_coeff_ne_zero h), WithTop.coe_le_coe]
exact order_le_of_coeff_ne_zero h
#align hahn_series.add_val_le_of_coeff_ne_zero HahnSeries.addVal_le_of_coeff_ne_zero
+-/
end Valuation
+#print HahnSeries.isPwo_iUnion_support_powers /-
theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
{x : HahnSeries Γ R} (hx : 0 < addVal Γ R x) : (⋃ n : ℕ, (x ^ n).support).IsPwo :=
by
@@ -1381,6 +1582,7 @@ theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring
· obtain ⟨i, j, hi, hj, rfl⟩ := support_mul_subset_add_support hn
exact SetLike.mem_coe.2 (AddSubmonoid.add_mem _ (AddSubmonoid.subset_closure hi) (ih hj))
#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPwo_iUnion_support_powers
+-/
section
@@ -1408,26 +1610,34 @@ variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
instance : CoeFun (SummableFamily Γ R α) fun _ => α → HahnSeries Γ R :=
⟨toFun⟩
+#print HahnSeries.SummableFamily.isPwo_iUnion_support /-
theorem isPwo_iUnion_support (s : SummableFamily Γ R α) : Set.IsPwo (⋃ a : α, (s a).support) :=
s.isPwo_iUnion_support'
#align hahn_series.summable_family.is_pwo_Union_support HahnSeries.SummableFamily.isPwo_iUnion_support
+-/
+#print HahnSeries.SummableFamily.finite_co_support /-
theorem finite_co_support (s : SummableFamily Γ R α) (g : Γ) :
(Function.support fun a => (s a).coeff g).Finite :=
s.finite_co_support' g
#align hahn_series.summable_family.finite_co_support HahnSeries.SummableFamily.finite_co_support
+-/
+#print HahnSeries.SummableFamily.coe_injective /-
theorem coe_injective : @Function.Injective (SummableFamily Γ R α) (α → HahnSeries Γ R) coeFn
| ⟨f1, hU1, hf1⟩, ⟨f2, hU2, hf2⟩, h =>
by
change f1 = f2 at h
subst h
#align hahn_series.summable_family.coe_injective HahnSeries.SummableFamily.coe_injective
+-/
+#print HahnSeries.SummableFamily.ext /-
@[ext]
theorem ext {s t : SummableFamily Γ R α} (h : ∀ a : α, s a = t a) : s = t :=
coe_injective <| funext h
#align hahn_series.summable_family.ext HahnSeries.SummableFamily.ext
+-/
instance : Add (SummableFamily Γ R α) :=
⟨fun x y =>
@@ -1452,23 +1662,31 @@ instance : Zero (SummableFamily Γ R α) :=
instance : Inhabited (SummableFamily Γ R α) :=
⟨0⟩
+#print HahnSeries.SummableFamily.coe_add /-
@[simp]
theorem coe_add {s t : SummableFamily Γ R α} : ⇑(s + t) = s + t :=
rfl
#align hahn_series.summable_family.coe_add HahnSeries.SummableFamily.coe_add
+-/
+#print HahnSeries.SummableFamily.add_apply /-
theorem add_apply {s t : SummableFamily Γ R α} {a : α} : (s + t) a = s a + t a :=
rfl
#align hahn_series.summable_family.add_apply HahnSeries.SummableFamily.add_apply
+-/
+#print HahnSeries.SummableFamily.coe_zero /-
@[simp]
theorem coe_zero : ((0 : SummableFamily Γ R α) : α → HahnSeries Γ R) = 0 :=
rfl
#align hahn_series.summable_family.coe_zero HahnSeries.SummableFamily.coe_zero
+-/
+#print HahnSeries.SummableFamily.zero_apply /-
theorem zero_apply {a : α} : (0 : SummableFamily Γ R α) a = 0 :=
rfl
#align hahn_series.summable_family.zero_apply HahnSeries.SummableFamily.zero_apply
+-/
instance : AddCommMonoid (SummableFamily Γ R α)
where
@@ -1479,6 +1697,7 @@ instance : AddCommMonoid (SummableFamily Γ R α)
add_comm s t := by ext; apply add_comm
add_assoc r s t := by ext; apply add_assoc
+#print HahnSeries.SummableFamily.hsum /-
/-- The infinite sum of a `summable_family` of Hahn series. -/
def hsum (s : SummableFamily Γ R α) : HahnSeries Γ R
where
@@ -1491,12 +1710,16 @@ def hsum (s : SummableFamily Γ R α) : HahnSeries Γ R
intro h
rw [finsum_congr h, finsum_zero]
#align hahn_series.summable_family.hsum HahnSeries.SummableFamily.hsum
+-/
+#print HahnSeries.SummableFamily.hsum_coeff /-
@[simp]
theorem hsum_coeff {s : SummableFamily Γ R α} {g : Γ} : s.hsum.coeff g = ∑ᶠ i, (s i).coeff g :=
rfl
#align hahn_series.summable_family.hsum_coeff HahnSeries.SummableFamily.hsum_coeff
+-/
+#print HahnSeries.SummableFamily.support_hsum_subset /-
theorem support_hsum_subset {s : SummableFamily Γ R α} : s.hsum.support ⊆ ⋃ a : α, (s a).support :=
fun g hg =>
by
@@ -1505,7 +1728,9 @@ theorem support_hsum_subset {s : SummableFamily Γ R α} : s.hsum.support ⊆
rw [Set.mem_iUnion]
exact ⟨a, h2⟩
#align hahn_series.summable_family.support_hsum_subset HahnSeries.SummableFamily.support_hsum_subset
+-/
+#print HahnSeries.SummableFamily.hsum_add /-
@[simp]
theorem hsum_add {s t : SummableFamily Γ R α} : (s + t).hsum = s.hsum + t.hsum :=
by
@@ -1513,6 +1738,7 @@ theorem hsum_add {s t : SummableFamily Γ R α} : (s + t).hsum = s.hsum + t.hsum
simp only [hsum_coeff, add_coeff, add_apply]
exact finsum_add_distrib (s.finite_co_support _) (t.finite_co_support _)
#align hahn_series.summable_family.hsum_add HahnSeries.SummableFamily.hsum_add
+-/
end AddCommMonoid
@@ -1532,23 +1758,31 @@ instance : AddCommGroup (SummableFamily Γ R α) :=
exact s.finite_co_support g }
add_left_neg := fun a => by ext; apply add_left_neg }
+#print HahnSeries.SummableFamily.coe_neg /-
@[simp]
theorem coe_neg : ⇑(-s) = -s :=
rfl
#align hahn_series.summable_family.coe_neg HahnSeries.SummableFamily.coe_neg
+-/
+#print HahnSeries.SummableFamily.neg_apply /-
theorem neg_apply : (-s) a = -s a :=
rfl
#align hahn_series.summable_family.neg_apply HahnSeries.SummableFamily.neg_apply
+-/
+#print HahnSeries.SummableFamily.coe_sub /-
@[simp]
theorem coe_sub : ⇑(s - t) = s - t :=
rfl
#align hahn_series.summable_family.coe_sub HahnSeries.SummableFamily.coe_sub
+-/
+#print HahnSeries.SummableFamily.sub_apply /-
theorem sub_apply : (s - t) a = s a - t a :=
rfl
#align hahn_series.summable_family.sub_apply HahnSeries.SummableFamily.sub_apply
+-/
end AddCommGroup
@@ -1579,10 +1813,12 @@ instance : SMul (HahnSeries Γ R) (SummableFamily Γ R α)
is_pwo_support, Prod.exists]
exact ⟨i, j, mem_coe.2 (mem_add_antidiagonal.2 ⟨hi, Set.mem_iUnion.2 ⟨a, hj⟩, rfl⟩), hj⟩ }
+#print HahnSeries.SummableFamily.smul_apply /-
@[simp]
theorem smul_apply {x : HahnSeries Γ R} {s : SummableFamily Γ R α} {a : α} : (x • s) a = x * s a :=
rfl
#align hahn_series.summable_family.smul_apply HahnSeries.SummableFamily.smul_apply
+-/
instance : Module (HahnSeries Γ R) (SummableFamily Γ R α)
where
@@ -1594,6 +1830,7 @@ instance : Module (HahnSeries Γ R) (SummableFamily Γ R α)
smul_add x s t := ext fun a => mul_add _ _ _
mul_smul x y s := ext fun a => mul_assoc _ _ _
+#print HahnSeries.SummableFamily.hsum_smul /-
@[simp]
theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s).hsum = x * s.hsum :=
by
@@ -1627,7 +1864,9 @@ theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s)
rw [← hsum_coeff, Classical.not_not.1 fun con => ha ⟨hU.1, Con, hU.2.2⟩,
MulZeroClass.mul_zero]
#align hahn_series.summable_family.hsum_smul HahnSeries.SummableFamily.hsum_smul
+-/
+#print HahnSeries.SummableFamily.lsum /-
/-- The summation of a `summable_family` as a `linear_map`. -/
@[simps]
def lsum : SummableFamily Γ R α →ₗ[HahnSeries Γ R] HahnSeries Γ R
@@ -1636,12 +1875,15 @@ def lsum : SummableFamily Γ R α →ₗ[HahnSeries Γ R] HahnSeries Γ R
map_add' _ _ := hsum_add
map_smul' _ _ := hsum_smul
#align hahn_series.summable_family.lsum HahnSeries.SummableFamily.lsum
+-/
+#print HahnSeries.SummableFamily.hsum_sub /-
@[simp]
theorem hsum_sub {R : Type _} [Ring R] {s t : SummableFamily Γ R α} :
(s - t).hsum = s.hsum - t.hsum := by
rw [← lsum_apply, LinearMap.map_sub, lsum_apply, lsum_apply]
#align hahn_series.summable_family.hsum_sub HahnSeries.SummableFamily.hsum_sub
+-/
end Semiring
@@ -1649,6 +1891,7 @@ section OfFinsupp
variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
+#print HahnSeries.SummableFamily.ofFinsupp /-
/-- A family with only finitely many nonzero elements is summable. -/
def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α
where
@@ -1670,12 +1913,16 @@ def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α
contrapose! ha
simp [ha]
#align hahn_series.summable_family.of_finsupp HahnSeries.SummableFamily.ofFinsupp
+-/
+#print HahnSeries.SummableFamily.coe_ofFinsupp /-
@[simp]
theorem coe_ofFinsupp {f : α →₀ HahnSeries Γ R} : ⇑(SummableFamily.ofFinsupp f) = f :=
rfl
#align hahn_series.summable_family.coe_of_finsupp HahnSeries.SummableFamily.coe_ofFinsupp
+-/
+#print HahnSeries.SummableFamily.hsum_ofFinsupp /-
@[simp]
theorem hsum_ofFinsupp {f : α →₀ HahnSeries Γ R} : (ofFinsupp f).hsum = f.Sum fun a => id :=
by
@@ -1688,6 +1935,7 @@ theorem hsum_ofFinsupp {f : α →₀ HahnSeries Γ R} : (ofFinsupp f).hsum = f.
contrapose! h
simp [h]
#align hahn_series.summable_family.hsum_of_finsupp HahnSeries.SummableFamily.hsum_ofFinsupp
+-/
end OfFinsupp
@@ -1722,23 +1970,30 @@ def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R
variable (s : SummableFamily Γ R α) (f : α ↪ β) {a : α} {b : β}
+#print HahnSeries.SummableFamily.embDomain_apply /-
theorem embDomain_apply :
s.embDomain f b = if h : b ∈ Set.range f then s (Classical.choose h) else 0 :=
rfl
#align hahn_series.summable_family.emb_domain_apply HahnSeries.SummableFamily.embDomain_apply
+-/
+#print HahnSeries.SummableFamily.embDomain_image /-
@[simp]
theorem embDomain_image : s.embDomain f (f a) = s a :=
by
rw [emb_domain_apply, dif_pos (Set.mem_range_self a)]
exact congr rfl (f.injective (Classical.choose_spec (Set.mem_range_self a)))
#align hahn_series.summable_family.emb_domain_image HahnSeries.SummableFamily.embDomain_image
+-/
+#print HahnSeries.SummableFamily.embDomain_notin_range /-
@[simp]
theorem embDomain_notin_range (h : b ∉ Set.range f) : s.embDomain f b = 0 := by
rw [emb_domain_apply, dif_neg h]
#align hahn_series.summable_family.emb_domain_notin_range HahnSeries.SummableFamily.embDomain_notin_range
+-/
+#print HahnSeries.SummableFamily.hsum_embDomain /-
@[simp]
theorem hsum_embDomain : (s.embDomain f).hsum = s.hsum :=
by
@@ -1746,6 +2001,7 @@ theorem hsum_embDomain : (s.embDomain f).hsum = s.hsum :=
simp only [hsum_coeff, emb_domain_apply, apply_dite HahnSeries.coeff, dite_apply, zero_coeff]
exact finsum_emb_domain f fun a => (s a).coeff g
#align hahn_series.summable_family.hsum_emb_domain HahnSeries.SummableFamily.hsum_embDomain
+-/
end EmbDomain
@@ -1753,6 +2009,7 @@ section powers
variable [LinearOrderedCancelAddCommMonoid Γ] [CommRing R] [IsDomain R]
+#print HahnSeries.SummableFamily.powers /-
/-- The powers of an element of positive valuation form a summable family. -/
def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R ℕ
where
@@ -1784,14 +2041,18 @@ def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R
Ne.def, mem_support, Set.mem_setOf_eq]
exact ⟨hi, n, hj⟩
#align hahn_series.summable_family.powers HahnSeries.SummableFamily.powers
+-/
variable {x : HahnSeries Γ R} (hx : 0 < addVal Γ R x)
+#print HahnSeries.SummableFamily.coe_powers /-
@[simp]
theorem coe_powers : ⇑(powers x hx) = pow x :=
rfl
#align hahn_series.summable_family.coe_powers HahnSeries.SummableFamily.coe_powers
+-/
+#print HahnSeries.SummableFamily.embDomain_succ_smul_powers /-
theorem embDomain_succ_smul_powers :
(x • powers x hx).embDomain ⟨Nat.succ, Nat.succ_injective⟩ =
powers x hx - ofFinsupp (Finsupp.single 0 1) :=
@@ -1806,13 +2067,16 @@ theorem embDomain_succ_smul_powers :
simp only [pow_succ, coe_powers, coe_sub, smul_apply, coe_of_finsupp, Pi.sub_apply]
rw [Finsupp.single_eq_of_ne n.succ_ne_zero.symm, sub_zero]
#align hahn_series.summable_family.emb_domain_succ_smul_powers HahnSeries.SummableFamily.embDomain_succ_smul_powers
+-/
+#print HahnSeries.SummableFamily.one_sub_self_mul_hsum_powers /-
theorem one_sub_self_mul_hsum_powers : (1 - x) * (powers x hx).hsum = 1 :=
by
rw [← hsum_smul, sub_smul, one_smul, hsum_sub, ←
hsum_emb_domain (x • powers x hx) ⟨Nat.succ, Nat.succ_injective⟩, emb_domain_succ_smul_powers]
simp
#align hahn_series.summable_family.one_sub_self_mul_hsum_powers HahnSeries.SummableFamily.one_sub_self_mul_hsum_powers
+-/
end powers
@@ -1826,6 +2090,7 @@ section IsDomain
variable [CommRing R] [IsDomain R]
+#print HahnSeries.unit_aux /-
theorem unit_aux (x : HahnSeries Γ R) {r : R} (hr : r * x.coeff x.order = 1) :
0 < addVal Γ R (1 - C r * single (-x.order) 1 * x) :=
by
@@ -1847,7 +2112,9 @@ theorem unit_aux (x : HahnSeries Γ R) {r : R} (hr : r * x.coeff x.order = 1) :
rw [← Con, mul_assoc, sub_coeff, one_coeff, if_pos rfl, C_mul_eq_smul, smul_coeff, smul_eq_mul,
← add_neg_self x.order, single_mul_coeff_add, one_mul, hr, sub_self]
#align hahn_series.unit_aux HahnSeries.unit_aux
+-/
+#print HahnSeries.isUnit_iff /-
theorem isUnit_iff {x : HahnSeries Γ R} : IsUnit x ↔ IsUnit (x.coeff x.order) :=
by
constructor
@@ -1864,6 +2131,7 @@ theorem isUnit_iff {x : HahnSeries Γ R} : IsUnit x ↔ IsUnit (x.coeff x.order)
rw [sub_sub_cancel] at h
exact isUnit_of_mul_isUnit_right (isUnit_of_mul_eq_one _ _ h)
#align hahn_series.is_unit_iff HahnSeries.isUnit_iff
+-/
end IsDomain
mathlib commit https://github.com/leanprover-community/mathlib/commit/a3e83f0fa4391c8740f7d773a7a9b74e311ae2a3
@@ -628,8 +628,8 @@ instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R)
isPwo_support' :=
haveI h :
{a : Γ |
- (∑ ij : Γ × Γ in add_antidiagonal x.is_pwo_support y.is_pwo_support a,
- x.coeff ij.fst * y.coeff ij.snd) ≠
+ ∑ ij : Γ × Γ in add_antidiagonal x.is_pwo_support y.is_pwo_support a,
+ x.coeff ij.fst * y.coeff ij.snd ≠
0} ⊆
{a : Γ | (add_antidiagonal x.is_pwo_support y.is_pwo_support a).Nonempty} :=
by
mathlib commit https://github.com/leanprover-community/mathlib/commit/5f25c089cb34db4db112556f23c50d12da81b297
@@ -627,11 +627,11 @@ instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R)
∑ ij in addAntidiagonal x.isPwo_support y.isPwo_support a, x.coeff ij.fst * y.coeff ij.snd
isPwo_support' :=
haveI h :
- { a : Γ |
+ {a : Γ |
(∑ ij : Γ × Γ in add_antidiagonal x.is_pwo_support y.is_pwo_support a,
x.coeff ij.fst * y.coeff ij.snd) ≠
- 0 } ⊆
- { a : Γ | (add_antidiagonal x.is_pwo_support y.is_pwo_support a).Nonempty } :=
+ 0} ⊆
+ {a : Γ | (add_antidiagonal x.is_pwo_support y.is_pwo_support a).Nonempty} :=
by
intro a ha
contrapose! ha
@@ -1131,12 +1131,12 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
ext n
simp only [PowerSeries.coeff_mul, PowerSeries.coeff_mk, mul_coeff, is_pwo_support]
classical
- refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
- ext m
- simp only [nat.mem_antidiagonal, mem_add_antidiagonal, and_congr_left_iff, mem_filter,
- mem_support]
- rintro h
- rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
+ refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
+ ext m
+ simp only [nat.mem_antidiagonal, mem_add_antidiagonal, and_congr_left_iff, mem_filter,
+ mem_support]
+ rintro h
+ rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_power_series HahnSeries.toPowerSeries
theorem coeff_toPowerSeries {f : HahnSeries ℕ R} {n : ℕ} :
@@ -1187,7 +1187,7 @@ theorem ofPowerSeries_C (r : R) : ofPowerSeries Γ R (PowerSeries.C R r) = HahnS
simp only [C, single_coeff, of_power_series_apply, RingHom.coe_mk]
split_ifs with hn hn
· subst hn
- convert@emb_domain_coeff _ _ _ _ _ _ _ _ 0 <;> simp
+ convert @emb_domain_coeff _ _ _ _ _ _ _ _ 0 <;> simp
· rw [emb_domain_notin_image_support]
simp only [not_exists, Set.mem_image, to_power_series_symm_apply_coeff, mem_support,
PowerSeries.coeff_C]
@@ -1202,7 +1202,7 @@ theorem ofPowerSeries_X : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
simp only [single_coeff, of_power_series_apply, RingHom.coe_mk]
split_ifs with hn hn
· rw [hn]
- convert@emb_domain_coeff _ _ _ _ _ _ _ _ 1 <;> simp
+ convert @emb_domain_coeff _ _ _ _ _ _ _ _ 1 <;> simp
· rw [emb_domain_notin_image_support]
simp only [not_exists, Set.mem_image, to_power_series_symm_apply_coeff, mem_support,
PowerSeries.coeff_X]
@@ -1238,14 +1238,14 @@ def toMvPowerSeries {σ : Type _} [Fintype σ] : HahnSeries (σ →₀ ℕ) R
ext n
simp only [MvPowerSeries.coeff_mul]
classical
- change (f * g).coeff n = _
- simp_rw [mul_coeff]
- refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
- ext m
- simp only [and_congr_left_iff, mem_add_antidiagonal, mem_filter, mem_support,
- Finsupp.mem_antidiagonal]
- rintro h
- rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
+ change (f * g).coeff n = _
+ simp_rw [mul_coeff]
+ refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
+ ext m
+ simp only [and_congr_left_iff, mem_add_antidiagonal, mem_filter, mem_support,
+ Finsupp.mem_antidiagonal]
+ rintro h
+ rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_mv_power_series HahnSeries.toMvPowerSeries
variable {σ : Type _} [Fintype σ]
@@ -1393,7 +1393,7 @@ variable (Γ) (R) [PartialOrder Γ] [AddCommMonoid R]
structure SummableFamily (α : Type _) where
toFun : α → HahnSeries Γ R
isPwo_iUnion_support' : Set.IsPwo (⋃ a : α, (to_fun a).support)
- finite_co_support' : ∀ g : Γ, { a | (to_fun a).coeff g ≠ 0 }.Finite
+ finite_co_support' : ∀ g : Γ, {a | (to_fun a).coeff g ≠ 0}.Finite
#align hahn_series.summable_family HahnSeries.SummableFamily
-/
@@ -1760,7 +1760,7 @@ def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R
isPwo_iUnion_support' := isPwo_iUnion_support_powers hx
finite_co_support' g := by
have hpwo := is_pwo_Union_support_powers hx
- by_cases hg : g ∈ ⋃ n : ℕ, { g | (x ^ n).coeff g ≠ 0 }
+ by_cases hg : g ∈ ⋃ n : ℕ, {g | (x ^ n).coeff g ≠ 0}
swap; · exact set.finite_empty.subset fun n hn => hg (Set.mem_iUnion.2 ⟨n, hn⟩)
apply hpwo.is_wf.induction hg
intro y ys hy
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -281,7 +281,7 @@ theorem coeff_eq_zero_of_lt_order {x : HahnSeries Γ R} {i : Γ} (hi : i < x.ord
rcases eq_or_ne x 0 with (rfl | hx)
· simp
contrapose! hi
- rw [← Ne.def, ← mem_support] at hi
+ rw [← Ne.def, ← mem_support] at hi
rw [order_of_ne hx]
exact Set.IsWf.not_lt_min _ _ hi
#align hahn_series.coeff_eq_zero_of_lt_order HahnSeries.coeff_eq_zero_of_lt_order
@@ -316,7 +316,7 @@ theorem embDomain_coeff {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {a : Γ} :
· rw [dif_neg, Classical.not_not.1 fun c => ha ((mem_support _ _).2 c)]
contrapose! ha
obtain ⟨b, hb1, hb2⟩ := (Set.mem_image _ _ _).1 ha
- rwa [f.injective hb2] at hb1
+ rwa [f.injective hb2] at hb1
#align hahn_series.emb_domain_coeff HahnSeries.embDomain_coeff
@[simp]
@@ -366,9 +366,9 @@ theorem embDomain_injective {f : Γ ↪o Γ'} :
Function.Injective (embDomain f : HahnSeries Γ R → HahnSeries Γ' R) := fun x y xy =>
by
ext g
- rw [ext_iff, Function.funext_iff] at xy
+ rw [ext_iff, Function.funext_iff] at xy
have xyg := xy (f g)
- rwa [emb_domain_coeff, emb_domain_coeff] at xyg
+ rwa [emb_domain_coeff, emb_domain_coeff] at xyg
#align hahn_series.emb_domain_injective HahnSeries.embDomain_injective
end Domain
@@ -406,7 +406,7 @@ theorem add_coeff {x y : HahnSeries Γ R} {a : Γ} : (x + y).coeff a = x.coeff a
theorem support_add_subset {x y : HahnSeries Γ R} : support (x + y) ⊆ support x ∪ support y :=
fun a ha => by
- rw [mem_support, add_coeff] at ha
+ rw [mem_support, add_coeff] at ha
rw [Set.mem_union, mem_support, mem_support]
contrapose! ha
rw [ha.1, ha.2, add_zero]
@@ -653,7 +653,7 @@ theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {
rw [mul_coeff]
apply sum_subset_zero_on_sdiff (add_antidiagonal_mono_right hys) _ fun _ _ => rfl
intro b hb
- simp only [not_and, mem_sdiff, mem_add_antidiagonal, mem_support, not_imp_not] at hb
+ simp only [not_and, mem_sdiff, mem_add_antidiagonal, mem_support, not_imp_not] at hb
rw [hb.2 hb.1.1 hb.1.2.2, MulZeroClass.mul_zero]
#align hahn_series.mul_coeff_right' HahnSeries.mul_coeff_right'
@@ -665,7 +665,7 @@ theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a
rw [mul_coeff]
apply sum_subset_zero_on_sdiff (add_antidiagonal_mono_left hxs) _ fun _ _ => rfl
intro b hb
- simp only [not_and', mem_sdiff, mem_add_antidiagonal, mem_support, not_ne_iff] at hb
+ simp only [not_and', mem_sdiff, mem_add_antidiagonal, mem_support, not_ne_iff] at hb
rw [hb.2 ⟨hb.1.2.1, hb.1.2.2⟩, MulZeroClass.zero_mul]
#align hahn_series.mul_coeff_left' HahnSeries.mul_coeff_left'
@@ -708,8 +708,8 @@ theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
simp only [not_mem_empty, not_and, Set.mem_singleton_iff, Classical.not_not,
mem_add_antidiagonal, Set.mem_setOf_eq, iff_false_iff]
rintro rfl h2 h1
- rw [add_comm] at h1
- rw [← add_right_cancel h1] at hx
+ rw [add_comm] at h1
+ rw [← add_right_cancel h1] at hx
exact h2 hx
trans ∑ ij : Γ × Γ in {(b, a)}, (single b r).coeff ij.fst * x.coeff ij.snd
· apply sum_congr _ fun _ _ => rfl
@@ -718,7 +718,7 @@ theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
Set.mem_setOf_eq]
constructor
· rintro ⟨rfl, h2, h1⟩
- rw [add_comm] at h1
+ rw [add_comm] at h1
refine' ⟨rfl, add_right_cancel h1⟩
· rintro ⟨rfl, rfl⟩
exact ⟨rfl, by simp [hx], add_comm _ _⟩
@@ -738,7 +738,7 @@ theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
simp only [not_mem_empty, not_and, Set.mem_singleton_iff, Classical.not_not,
mem_add_antidiagonal, Set.mem_setOf_eq, iff_false_iff]
rintro h2 rfl h1
- rw [← add_right_cancel h1] at hx
+ rw [← add_right_cancel h1] at hx
exact h2 hx
trans ∑ ij : Γ × Γ in {(a, b)}, x.coeff ij.fst * (single b r).coeff ij.snd
· apply sum_congr _ fun _ _ => rfl
@@ -774,7 +774,7 @@ theorem support_mul_subset_add_support [NonUnitalNonAssocSemiring R] {x y : Hahn
· exact x.is_pwo_support
· exact y.is_pwo_support
contrapose! hx
- simp only [not_nonempty_iff_eq_empty, Ne.def, Set.mem_setOf_eq] at hx
+ simp only [not_nonempty_iff_eq_empty, Ne.def, Set.mem_setOf_eq] at hx
simp [hx]
#align hahn_series.support_mul_subset_add_support HahnSeries.support_mul_subset_add_support
@@ -797,17 +797,17 @@ private theorem mul_assoc' [NonUnitalSemiring R] (x y z : HahnSeries Γ R) :
refine' sum_bij_ne_zero (fun a has ha0 => ⟨⟨a.2.1, a.2.2 + a.1.2⟩, ⟨a.2.2, a.1.2⟩⟩) _ _ _ _
· rintro ⟨⟨i, j⟩, ⟨k, l⟩⟩ H1 H2
simp only [and_true_iff, Set.image2_add, eq_self_iff_true, mem_add_antidiagonal, Ne.def,
- Set.image_prod, mem_sigma, Set.mem_setOf_eq] at H1 H2⊢
+ Set.image_prod, mem_sigma, Set.mem_setOf_eq] at H1 H2 ⊢
obtain ⟨⟨H3, nz, rfl⟩, nx, ny, rfl⟩ := H1
exact ⟨⟨nx, Set.add_mem_add ny nz, (add_assoc _ _ _).symm⟩, ny, nz⟩
· rintro ⟨⟨i1, j1⟩, k1, l1⟩ ⟨⟨i2, j2⟩, k2, l2⟩ H1 H2 H3 H4 H5
simp only [Set.image2_add, Prod.mk.inj_iff, mem_add_antidiagonal, Ne.def, Set.image_prod,
- mem_sigma, Set.mem_setOf_eq, heq_iff_eq] at H1 H3 H5
+ mem_sigma, Set.mem_setOf_eq, heq_iff_eq] at H1 H3 H5
obtain ⟨⟨rfl, H⟩, rfl, rfl⟩ := H5
simp only [and_true_iff, Prod.mk.inj_iff, eq_self_iff_true, heq_iff_eq, ← H1.2.2.2, ← H3.2.2.2]
· rintro ⟨⟨i, j⟩, ⟨k, l⟩⟩ H1 H2
simp only [exists_prop, Set.image2_add, Prod.mk.inj_iff, mem_add_antidiagonal, Sigma.exists,
- Ne.def, Set.image_prod, mem_sigma, Set.mem_setOf_eq, heq_iff_eq, Prod.exists] at H1 H2⊢
+ Ne.def, Set.image_prod, mem_sigma, Set.mem_setOf_eq, heq_iff_eq, Prod.exists] at H1 H2 ⊢
obtain ⟨⟨nx, H, rfl⟩, ny, nz, rfl⟩ := H1
exact
⟨i + k, l, i, k, ⟨⟨Set.add_mem_add nx ny, nz, add_assoc _ _ _⟩, nx, ny, rfl⟩, fun con =>
@@ -934,7 +934,7 @@ theorem single_mul_single {a b : Γ} {r s : R} : single a r * single b s = singl
· rw [single_coeff_of_ne h, mul_coeff, sum_eq_zero]
simp_rw [mem_add_antidiagonal]
rintro ⟨y, z⟩ ⟨hy, hz, rfl⟩
- rw [eq_of_mem_support_single hy, eq_of_mem_support_single hz] at h
+ rw [eq_of_mem_support_single hy, eq_of_mem_support_single hz] at h
exact (h rfl).elim
#align hahn_series.single_mul_single HahnSeries.single_mul_single
@@ -967,15 +967,15 @@ theorem C_one : C (1 : R) = (1 : HahnSeries Γ R) :=
theorem C_injective : Function.Injective (C : R → HahnSeries Γ R) :=
by
intro r s rs
- rw [ext_iff, Function.funext_iff] at rs
+ rw [ext_iff, Function.funext_iff] at rs
have h := rs 0
- rwa [C_apply, single_coeff_same, C_apply, single_coeff_same] at h
+ rwa [C_apply, single_coeff_same, C_apply, single_coeff_same] at h
#align hahn_series.C_injective HahnSeries.C_injective
theorem C_ne_zero {r : R} (h : r ≠ 0) : (C r : HahnSeries Γ R) ≠ 0 :=
by
contrapose! h
- rw [← C_zero] at h
+ rw [← C_zero] at h
exact C_injective h
#align hahn_series.C_ne_zero HahnSeries.C_ne_zero
@@ -1019,7 +1019,7 @@ theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
apply sum_subset
· rintro ⟨i, j⟩ hij
simp only [exists_prop, mem_map, Prod.mk.inj_iff, mem_add_antidiagonal,
- Function.Embedding.coe_prodMap, mem_support, Prod.exists] at hij
+ Function.Embedding.coe_prodMap, mem_support, Prod.exists] at hij
obtain ⟨i, j, ⟨hx, hy, rfl⟩, rfl, rfl⟩ := hij
simp [hx, hy, hf]
· rintro ⟨_, _⟩ h1 h2
@@ -1029,7 +1029,7 @@ theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
simp only [exists_prop, mem_map, Prod.mk.inj_iff, mem_add_antidiagonal,
Function.Embedding.coe_prodMap, mem_support, Prod.exists]
simp only [mem_add_antidiagonal, emb_domain_coeff, mem_support, ← hf,
- OrderEmbedding.eq_iff_eq] at h1
+ OrderEmbedding.eq_iff_eq] at h1
exact ⟨i, j, h1, rfl⟩
· rw [emb_domain_notin_range hg, eq_comm]
contrapose! hg
@@ -1375,7 +1375,7 @@ theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring
induction' n with n ih <;> intro g hn
· simp only [exists_prop, and_true_iff, Set.mem_singleton_iff, Set.setOf_eq_eq_singleton,
mem_support, ite_eq_right_iff, Ne.def, not_false_iff, one_ne_zero, pow_zero, not_forall,
- one_coeff] at hn
+ one_coeff] at hn
rw [hn, SetLike.mem_coe]
exact AddSubmonoid.zero_mem _
· obtain ⟨i, j, hi, hj, rfl⟩ := support_mul_subset_add_support hn
@@ -1418,8 +1418,9 @@ theorem finite_co_support (s : SummableFamily Γ R α) (g : Γ) :
#align hahn_series.summable_family.finite_co_support HahnSeries.SummableFamily.finite_co_support
theorem coe_injective : @Function.Injective (SummableFamily Γ R α) (α → HahnSeries Γ R) coeFn
- | ⟨f1, hU1, hf1⟩, ⟨f2, hU2, hf2⟩, h => by
- change f1 = f2 at h
+ | ⟨f1, hU1, hf1⟩, ⟨f2, hU2, hf2⟩, h =>
+ by
+ change f1 = f2 at h
subst h
#align hahn_series.summable_family.coe_injective HahnSeries.SummableFamily.coe_injective
@@ -1440,7 +1441,7 @@ instance : Add (SummableFamily Γ R α) :=
((x.finite_co_support g).union (y.finite_co_support g)).Subset
(by
intro a ha
- change (x a).coeff g + (y a).coeff g ≠ 0 at ha
+ change (x a).coeff g + (y a).coeff g ≠ 0 at ha
rw [Set.mem_union, Function.mem_support, Function.mem_support]
contrapose! ha
rw [ha.1, ha.2, add_zero]) }⟩
@@ -1499,7 +1500,7 @@ theorem hsum_coeff {s : SummableFamily Γ R α} {g : Γ} : s.hsum.coeff g = ∑
theorem support_hsum_subset {s : SummableFamily Γ R α} : s.hsum.support ⊆ ⋃ a : α, (s a).support :=
fun g hg =>
by
- rw [mem_support, hsum_coeff, finsum_eq_sum _ (s.finite_co_support _)] at hg
+ rw [mem_support, hsum_coeff, finsum_eq_sum _ (s.finite_co_support _)] at hg
obtain ⟨a, h1, h2⟩ := exists_ne_zero_of_sum_ne_zero hg
rw [Set.mem_iUnion]
exact ⟨a, h2⟩
@@ -1703,7 +1704,7 @@ def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R
by
refine' s.is_pwo_Union_support.mono (Set.iUnion_subset fun b g h => _)
by_cases hb : b ∈ Set.range f
- · rw [dif_pos hb] at h
+ · rw [dif_pos hb] at h
exact Set.mem_iUnion.2 ⟨Classical.choose hb, h⟩
· contrapose! h
simp [hb]
@@ -1712,7 +1713,7 @@ def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R
(by
intro b h
by_cases hb : b ∈ Set.range f
- · simp only [Ne.def, Set.mem_setOf_eq, dif_pos hb] at h
+ · simp only [Ne.def, Set.mem_setOf_eq, dif_pos hb] at h
exact ⟨Classical.choose hb, h, Classical.choose_spec hb⟩
· contrapose! h
simp only [Ne.def, Set.mem_setOf_eq, dif_neg hb, Classical.not_not, zero_coeff])
@@ -1857,10 +1858,10 @@ theorem isUnit_iff {x : HahnSeries Γ R} : IsUnit x ↔ IsUnit (x.coeff x.order)
rw [ui, one_coeff, if_pos]
rw [← order_mul (left_ne_zero_of_mul_eq_one ui) (right_ne_zero_of_mul_eq_one ui), ui, order_one]
· rintro ⟨⟨u, i, ui, iu⟩, h⟩
- rw [Units.val_mk] at h
- rw [h] at iu
+ rw [Units.val_mk] at h
+ rw [h] at iu
have h := summable_family.one_sub_self_mul_hsum_powers (unit_aux x iu)
- rw [sub_sub_cancel] at h
+ rw [sub_sub_cancel] at h
exact isUnit_of_mul_isUnit_right (isUnit_of_mul_eq_one _ _ h)
#align hahn_series.is_unit_iff HahnSeries.isUnit_iff
@@ -1881,7 +1882,7 @@ instance [Field R] : Field (HahnSeries Γ R) :=
have h :=
summable_family.one_sub_self_mul_hsum_powers
(unit_aux x (inv_mul_cancel (coeff_order_ne_zero x0)))
- rw [sub_sub_cancel] at h
+ rw [sub_sub_cancel] at h
rw [← mul_assoc, mul_comm x, h] }
end Inversion
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -1272,7 +1272,7 @@ def toPowerSeriesAlg : HahnSeries ℕ A ≃ₐ[R] PowerSeries A :=
{ toPowerSeries with
commutes' := fun r => by
ext n
- simp only [algebraMap_apply, PowerSeries.algebraMap_apply, [anonymous], C_apply,
+ simp only [algebraMap_apply, PowerSeries.algebraMap_apply, RingEquiv.toFun_eq_coe, C_apply,
coeff_to_power_series]
cases n
· simp only [PowerSeries.coeff_zero_eq_constantCoeff, single_coeff_same]
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -59,7 +59,7 @@ in the file `ring_theory/laurent_series`.
open Finset Function
-open BigOperators Classical Pointwise Polynomial
+open scoped BigOperators Classical Pointwise Polynomial
noncomputable section
@@ -292,6 +292,7 @@ section Domain
variable {Γ' : Type _} [PartialOrder Γ']
+#print HahnSeries.embDomain /-
/-- Extends the domain of a `hahn_series` by an `order_embedding`. -/
def embDomain (f : Γ ↪o Γ') : HahnSeries Γ R → HahnSeries Γ' R := fun x =>
{ coeff := fun b : Γ' => if h : b ∈ f '' x.support then x.coeff (Classical.choose h) else 0
@@ -301,6 +302,7 @@ def embDomain (f : Γ ↪o Γ') : HahnSeries Γ R → HahnSeries Γ' R := fun x
contrapose! hb
rw [Function.mem_support, dif_neg hb, Classical.not_not] }
#align hahn_series.emb_domain HahnSeries.embDomain
+-/
@[simp]
theorem embDomain_coeff {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {a : Γ} :
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -81,22 +81,10 @@ section Zero
variable [PartialOrder Γ] [Zero R]
-/- warning: hahn_series.coeff_injective -> HahnSeries.coeff_injective is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R], Function.Injective.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R], Function.Injective.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2)
-Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_injective HahnSeries.coeff_injectiveₓ'. -/
theorem coeff_injective : Injective (coeff : HahnSeries Γ R → Γ → R) :=
ext
#align hahn_series.coeff_injective HahnSeries.coeff_injective
-/- warning: hahn_series.coeff_inj -> HahnSeries.coeff_inj is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {y : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, Iff (Eq.{max (succ u1) (succ u2)} (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 y)) (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x y)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2} {y : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2}, Iff (Eq.{max (succ u2) (succ u1)} (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 y)) (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x y)
-Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_inj HahnSeries.coeff_injₓ'. -/
@[simp]
theorem coeff_inj {x y : HahnSeries Γ R} : x.coeff = y.coeff ↔ x = y :=
coeff_injective.eq_iff
@@ -110,34 +98,16 @@ def support (x : HahnSeries Γ R) : Set Γ :=
#align hahn_series.support HahnSeries.support
-/
-/- warning: hahn_series.is_pwo_support -> HahnSeries.isPwo_support is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] (x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2), Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] (x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2), Set.IsPwo.{u2} Γ (PartialOrder.toPreorder.{u2} Γ _inst_1) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x)
-Case conversion may be inaccurate. Consider using '#align hahn_series.is_pwo_support HahnSeries.isPwo_supportₓ'. -/
@[simp]
theorem isPwo_support (x : HahnSeries Γ R) : x.support.IsPwo :=
x.isPwo_support'
#align hahn_series.is_pwo_support HahnSeries.isPwo_support
-/- warning: hahn_series.is_wf_support -> HahnSeries.isWf_support is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] (x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2), Set.IsWf.{u1} Γ (Preorder.toHasLt.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] (x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2), Set.IsWf.{u2} Γ (Preorder.toLT.{u2} Γ (PartialOrder.toPreorder.{u2} Γ _inst_1)) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x)
-Case conversion may be inaccurate. Consider using '#align hahn_series.is_wf_support HahnSeries.isWf_supportₓ'. -/
@[simp]
theorem isWf_support (x : HahnSeries Γ R) : x.support.IsWf :=
x.isPwo_support.IsWf
#align hahn_series.is_wf_support HahnSeries.isWf_support
-/- warning: hahn_series.mem_support -> HahnSeries.mem_support is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] (x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (a : Γ), Iff (Membership.Mem.{u1, u1} Γ (Set.{u1} Γ) (Set.hasMem.{u1} Γ) a (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)) (Ne.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x a) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] (x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (a : Γ), Iff (Membership.mem.{u2, u2} Γ (Set.{u2} Γ) (Set.instMembershipSet.{u2} Γ) a (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x)) (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x a) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.mem_support HahnSeries.mem_supportₓ'. -/
@[simp]
theorem mem_support (x : HahnSeries Γ R) (a : Γ) : a ∈ x.support ↔ x.coeff a ≠ 0 :=
Iff.refl _
@@ -160,55 +130,25 @@ theorem zero_coeff {a : Γ} : (0 : HahnSeries Γ R).coeff a = 0 :=
#align hahn_series.zero_coeff HahnSeries.zero_coeff
-/
-/- warning: hahn_series.coeff_fun_eq_zero_iff -> HahnSeries.coeff_fun_eq_zero_iff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, Iff (Eq.{max (succ u1) (succ u2)} (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x) (OfNat.ofNat.{max u1 u2} (Γ -> R) 0 (OfNat.mk.{max u1 u2} (Γ -> R) 0 (Zero.zero.{max u1 u2} (Γ -> R) (Pi.instZero.{u1, u2} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => _inst_2)))))) (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2}, Iff (Eq.{max (succ u2) (succ u1)} (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x) (OfNat.ofNat.{max u2 u1} (Γ -> R) 0 (Zero.toOfNat0.{max u2 u1} (Γ -> R) (Pi.instZero.{u2, u1} Γ (fun (a._@.Mathlib.RingTheory.HahnSeries._hyg.17 : Γ) => R) (fun (i : Γ) => _inst_2))))) (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_fun_eq_zero_iff HahnSeries.coeff_fun_eq_zero_iffₓ'. -/
@[simp]
theorem coeff_fun_eq_zero_iff {x : HahnSeries Γ R} : x.coeff = 0 ↔ x = 0 :=
coeff_injective.eq_iff' rfl
#align hahn_series.coeff_fun_eq_zero_iff HahnSeries.coeff_fun_eq_zero_iff
-/- warning: hahn_series.ne_zero_of_coeff_ne_zero -> HahnSeries.ne_zero_of_coeff_ne_zero is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {g : Γ}, (Ne.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x g) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2)))) -> (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2} {g : Γ}, (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x g) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) -> (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.ne_zero_of_coeff_ne_zero HahnSeries.ne_zero_of_coeff_ne_zeroₓ'. -/
theorem ne_zero_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g ≠ 0) : x ≠ 0 :=
mt (fun x0 => (x0.symm ▸ zero_coeff : x.coeff g = 0)) h
#align hahn_series.ne_zero_of_coeff_ne_zero HahnSeries.ne_zero_of_coeff_ne_zero
-/- warning: hahn_series.support_zero -> HahnSeries.support_zero is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R], Eq.{succ u1} (Set.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) (EmptyCollection.emptyCollection.{u1} (Set.{u1} Γ) (Set.hasEmptyc.{u1} Γ))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R], Eq.{succ u2} (Set.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))) (EmptyCollection.emptyCollection.{u2} (Set.{u2} Γ) (Set.instEmptyCollectionSet.{u2} Γ))
-Case conversion may be inaccurate. Consider using '#align hahn_series.support_zero HahnSeries.support_zeroₓ'. -/
@[simp]
theorem support_zero : support (0 : HahnSeries Γ R) = ∅ :=
Function.support_zero
#align hahn_series.support_zero HahnSeries.support_zero
-/- warning: hahn_series.support_nonempty_iff -> HahnSeries.support_nonempty_iff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, Iff (Set.Nonempty.{u1} Γ (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)) (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2}, Iff (Set.Nonempty.{u2} Γ (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x)) (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.support_nonempty_iff HahnSeries.support_nonempty_iffₓ'. -/
@[simp]
theorem support_nonempty_iff {x : HahnSeries Γ R} : x.support.Nonempty ↔ x ≠ 0 := by
rw [support, support_nonempty_iff, Ne.def, coeff_fun_eq_zero_iff]
#align hahn_series.support_nonempty_iff HahnSeries.support_nonempty_iff
-/- warning: hahn_series.support_eq_empty_iff -> HahnSeries.support_eq_empty_iff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, Iff (Eq.{succ u1} (Set.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x) (EmptyCollection.emptyCollection.{u1} (Set.{u1} Γ) (Set.hasEmptyc.{u1} Γ))) (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2}, Iff (Eq.{succ u2} (Set.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x) (EmptyCollection.emptyCollection.{u2} (Set.{u2} Γ) (Set.instEmptyCollectionSet.{u2} Γ))) (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.support_eq_empty_iff HahnSeries.support_eq_empty_iffₓ'. -/
@[simp]
theorem support_eq_empty_iff {x : HahnSeries Γ R} : x.support = ∅ ↔ x = 0 :=
support_eq_empty_iff.trans coeff_fun_eq_zero_iff
@@ -234,12 +174,6 @@ theorem single_coeff_same (a : Γ) (r : R) : (single a r).coeff a = r :=
#align hahn_series.single_coeff_same HahnSeries.single_coeff_same
-/
-/- warning: hahn_series.single_coeff_of_ne -> HahnSeries.single_coeff_of_ne is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {a : Γ} {b : Γ} {r : R}, (Ne.{succ u1} Γ b a) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 a) r) b) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {a : Γ} {b : Γ} {r : R}, (Ne.{succ u2} Γ b a) -> (Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u2, u1} Γ R _inst_1 _inst_2 a) r) b) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.single_coeff_of_ne HahnSeries.single_coeff_of_neₓ'. -/
@[simp]
theorem single_coeff_of_ne (h : b ≠ a) : (single a r).coeff b = 0 :=
Pi.single_eq_of_ne h r
@@ -258,32 +192,14 @@ theorem support_single_of_ne (h : r ≠ 0) : support (single a r) = {a} :=
#align hahn_series.support_single_of_ne HahnSeries.support_single_of_ne
-/
-/- warning: hahn_series.support_single_subset -> HahnSeries.support_single_subset is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {a : Γ} {r : R}, HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 a) r)) (Singleton.singleton.{u1, u1} Γ (Set.{u1} Γ) (Set.hasSingleton.{u1} Γ) a)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {a : Γ} {r : R}, HasSubset.Subset.{u2} (Set.{u2} Γ) (Set.instHasSubsetSet.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u2, u1} Γ R _inst_1 _inst_2 a) r)) (Singleton.singleton.{u2, u2} Γ (Set.{u2} Γ) (Set.instSingletonSet.{u2} Γ) a)
-Case conversion may be inaccurate. Consider using '#align hahn_series.support_single_subset HahnSeries.support_single_subsetₓ'. -/
theorem support_single_subset : support (single a r) ⊆ {a} :=
Pi.support_single_subset
#align hahn_series.support_single_subset HahnSeries.support_single_subset
-/- warning: hahn_series.eq_of_mem_support_single -> HahnSeries.eq_of_mem_support_single is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {a : Γ} {r : R} {b : Γ}, (Membership.Mem.{u1, u1} Γ (Set.{u1} Γ) (Set.hasMem.{u1} Γ) b (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 a) r))) -> (Eq.{succ u1} Γ b a)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {a : Γ} {r : R} {b : Γ}, (Membership.mem.{u2, u2} Γ (Set.{u2} Γ) (Set.instMembershipSet.{u2} Γ) b (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u2, u1} Γ R _inst_1 _inst_2 a) r))) -> (Eq.{succ u2} Γ b a)
-Case conversion may be inaccurate. Consider using '#align hahn_series.eq_of_mem_support_single HahnSeries.eq_of_mem_support_singleₓ'. -/
theorem eq_of_mem_support_single {b : Γ} (h : b ∈ support (single a r)) : b = a :=
support_single_subset h
#align hahn_series.eq_of_mem_support_single HahnSeries.eq_of_mem_support_single
-/- warning: hahn_series.single_eq_zero -> HahnSeries.single_eq_zero is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {a : Γ}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 a) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2)))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {a : Γ}, Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u2, u1} Γ R _inst_1 _inst_2 a) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) 0 (Zero.toOfNat0.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.single_eq_zero HahnSeries.single_eq_zeroₓ'. -/
@[simp]
theorem single_eq_zero : single a (0 : R) = 0 :=
(single a).map_zero
@@ -301,12 +217,6 @@ theorem single_ne_zero (h : r ≠ 0) : single a r ≠ 0 := fun con =>
#align hahn_series.single_ne_zero HahnSeries.single_ne_zero
-/
-/- warning: hahn_series.single_eq_zero_iff -> HahnSeries.single_eq_zero_iff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {a : Γ} {r : R}, Iff (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 a) r) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) (Eq.{succ u2} R r (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {a : Γ} {r : R}, Iff (Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u2, u1} Γ R _inst_1 _inst_2 a) r) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) r) 0 (Zero.toOfNat0.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) r) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))) (Eq.{succ u1} R r (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.single_eq_zero_iff HahnSeries.single_eq_zero_iffₓ'. -/
@[simp]
theorem single_eq_zero_iff {a : Γ} {r : R} : single a r = 0 ↔ r = 0 :=
by
@@ -335,46 +245,22 @@ def order (x : HahnSeries Γ R) : Γ :=
#align hahn_series.order HahnSeries.order
-/
-/- warning: hahn_series.order_zero -> HahnSeries.order_zero is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : Zero.{u1} Γ], Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ _inst_3)))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] [_inst_3 : Zero.{u2} Γ], Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))) (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ _inst_3))
-Case conversion may be inaccurate. Consider using '#align hahn_series.order_zero HahnSeries.order_zeroₓ'. -/
@[simp]
theorem order_zero : order (0 : HahnSeries Γ R) = 0 :=
dif_pos rfl
#align hahn_series.order_zero HahnSeries.order_zero
-/- warning: hahn_series.order_of_ne -> HahnSeries.order_of_ne is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : Zero.{u1} Γ] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} (hx : Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))), Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x) (Set.IsWf.min.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x) (HahnSeries.isWf_support.{u1, u2} Γ R _inst_1 _inst_2 x) (Iff.mpr (Set.Nonempty.{u1} Γ (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)) (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) (HahnSeries.support_nonempty_iff.{u1, u2} Γ R _inst_1 _inst_2 x) hx))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] [_inst_3 : Zero.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2} (hx : Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))), Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x) (Set.IsWf.min.{u2} Γ (PartialOrder.toPreorder.{u2} Γ _inst_1) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x) (HahnSeries.isWf_support.{u1, u2} Γ R _inst_1 _inst_2 x) (Iff.mpr (Set.Nonempty.{u2} Γ (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x)) (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))) (HahnSeries.support_nonempty_iff.{u1, u2} Γ R _inst_1 _inst_2 x) hx))
-Case conversion may be inaccurate. Consider using '#align hahn_series.order_of_ne HahnSeries.order_of_neₓ'. -/
theorem order_of_ne {x : HahnSeries Γ R} (hx : x ≠ 0) :
order x = x.isWf_support.min (support_nonempty_iff.2 hx) :=
dif_neg hx
#align hahn_series.order_of_ne HahnSeries.order_of_ne
-/- warning: hahn_series.coeff_order_ne_zero -> HahnSeries.coeff_order_ne_zero is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : Zero.{u1} Γ] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) -> (Ne.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x (HahnSeries.order.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x)) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] [_inst_3 : Zero.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2}, (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))) -> (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x (HahnSeries.order.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x)) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_order_ne_zero HahnSeries.coeff_order_ne_zeroₓ'. -/
theorem coeff_order_ne_zero {x : HahnSeries Γ R} (hx : x ≠ 0) : x.coeff x.order ≠ 0 :=
by
rw [order_of_ne hx]
exact x.is_wf_support.min_mem (support_nonempty_iff.2 hx)
#align hahn_series.coeff_order_ne_zero HahnSeries.coeff_order_ne_zero
-/- warning: hahn_series.order_le_of_coeff_ne_zero -> HahnSeries.order_le_of_coeff_ne_zero is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_2 : Zero.{u1} R] {Γ : Type.{u2}} [_inst_4 : LinearOrderedCancelAddCommMonoid.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2} {g : Γ}, (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2 x g) (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R _inst_2)))) -> (LE.le.{u2} Γ (Preorder.toHasLe.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2 (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4))))))) x) g)
-but is expected to have type
- forall {R : Type.{u1}} [_inst_2 : Zero.{u1} R] {Γ : Type.{u2}} [_inst_4 : LinearOrderedCancelAddCommMonoid.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2} {g : Γ}, (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2 x g) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) -> (LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2 (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4))))) x) g)
-Case conversion may be inaccurate. Consider using '#align hahn_series.order_le_of_coeff_ne_zero HahnSeries.order_le_of_coeff_ne_zeroₓ'. -/
theorem order_le_of_coeff_ne_zero {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x : HahnSeries Γ R}
{g : Γ} (h : x.coeff g ≠ 0) : x.order ≤ g :=
le_trans (le_of_eq (order_of_ne (ne_zero_of_coeff_ne_zero h)))
@@ -390,12 +276,6 @@ theorem order_single (h : r ≠ 0) : (single a r).order = a :=
#align hahn_series.order_single HahnSeries.order_single
-/
-/- warning: hahn_series.coeff_eq_zero_of_lt_order -> HahnSeries.coeff_eq_zero_of_lt_order is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : Zero.{u1} Γ] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {i : Γ}, (LT.lt.{u1} Γ (Preorder.toHasLt.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) i (HahnSeries.order.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x)) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x i) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] [_inst_3 : Zero.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2} {i : Γ}, (LT.lt.{u2} Γ (Preorder.toLT.{u2} Γ (PartialOrder.toPreorder.{u2} Γ _inst_1)) i (HahnSeries.order.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x)) -> (Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x i) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_eq_zero_of_lt_order HahnSeries.coeff_eq_zero_of_lt_orderₓ'. -/
theorem coeff_eq_zero_of_lt_order {x : HahnSeries Γ R} {i : Γ} (hi : i < x.order) : x.coeff i = 0 :=
by
rcases eq_or_ne x 0 with (rfl | hx)
@@ -412,12 +292,6 @@ section Domain
variable {Γ' : Type _} [PartialOrder Γ']
-/- warning: hahn_series.emb_domain -> HahnSeries.embDomain is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'], (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) -> (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2)
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'], (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toLE.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) -> (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2)
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain HahnSeries.embDomainₓ'. -/
/-- Extends the domain of a `hahn_series` by an `order_embedding`. -/
def embDomain (f : Γ ↪o Γ') : HahnSeries Γ R → HahnSeries Γ' R := fun x =>
{ coeff := fun b : Γ' => if h : b ∈ f '' x.support then x.coeff (Classical.choose h) else 0
@@ -428,12 +302,6 @@ def embDomain (f : Γ ↪o Γ') : HahnSeries Γ R → HahnSeries Γ' R := fun x
rw [Function.mem_support, dif_neg hb, Classical.not_not] }
#align hahn_series.emb_domain HahnSeries.embDomain
-/- warning: hahn_series.emb_domain_coeff -> HahnSeries.embDomain_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))} {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u3, u2} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) f a)) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x a)
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))} {x : HahnSeries.{u3, u1} Γ R _inst_1 _inst_2} {a : Γ}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f a)) (HahnSeries.coeff.{u3, u1} Γ R _inst_1 _inst_2 x a)
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_coeff HahnSeries.embDomain_coeffₓ'. -/
@[simp]
theorem embDomain_coeff {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {a : Γ} :
(embDomain f x).coeff (f a) = x.coeff a :=
@@ -449,12 +317,6 @@ theorem embDomain_coeff {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {a : Γ} :
rwa [f.injective hb2] at hb1
#align hahn_series.emb_domain_coeff HahnSeries.embDomain_coeff
-/- warning: hahn_series.emb_domain_mk_coeff -> HahnSeries.embDomain_mk_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : Γ -> Γ'} (hfi : Function.Injective.{succ u1, succ u3} Γ Γ' f) (hf : forall (g : Γ) (g' : Γ), Iff (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)) (f g) (f g')) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) g g')) {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u3, u2} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 (RelEmbedding.mk.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (Function.Embedding.mk.{succ u1, succ u3} Γ Γ' f hfi) hf) x) (f a)) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x a)
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : Γ -> Γ'} (hfi : Function.Injective.{succ u3, succ u2} Γ Γ' f) (hf : forall (g : Γ) (g' : Γ), Iff (LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) (f g) (f g')) (LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) g g')) {x : HahnSeries.{u3, u1} Γ R _inst_1 _inst_2} {a : Γ}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 (RelEmbedding.mk.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (Function.Embedding.mk.{succ u3, succ u2} Γ Γ' f hfi) (fun {a._@.Mathlib.RingTheory.HahnSeries._hyg.1996 : Γ} {b._@.Mathlib.RingTheory.HahnSeries._hyg.1997 : Γ} => hf a._@.Mathlib.RingTheory.HahnSeries._hyg.1996 b._@.Mathlib.RingTheory.HahnSeries._hyg.1997)) x) (f a)) (HahnSeries.coeff.{u3, u1} Γ R _inst_1 _inst_2 x a)
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_mk_coeff HahnSeries.embDomain_mk_coeffₓ'. -/
@[simp]
theorem embDomain_mk_coeff {f : Γ → Γ'} (hfi : Function.Injective f)
(hf : ∀ g g' : Γ, f g ≤ f g' ↔ g ≤ g') {x : HahnSeries Γ R} {a : Γ} :
@@ -462,23 +324,11 @@ theorem embDomain_mk_coeff {f : Γ → Γ'} (hfi : Function.Injective f)
embDomain_coeff
#align hahn_series.emb_domain_mk_coeff HahnSeries.embDomain_mk_coeff
-/- warning: hahn_series.emb_domain_notin_image_support -> HahnSeries.embDomain_notin_image_support is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))} {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {b : Γ'}, (Not (Membership.Mem.{u3, u3} Γ' (Set.{u3} Γ') (Set.hasMem.{u3} Γ') b (Set.image.{u1, u3} Γ Γ' (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) f) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)))) -> (Eq.{succ u2} R (HahnSeries.coeff.{u3, u2} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) b) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))} {x : HahnSeries.{u3, u1} Γ R _inst_1 _inst_2} {b : Γ'}, (Not (Membership.mem.{u2, u2} Γ' (Set.{u2} Γ') (Set.instMembershipSet.{u2} Γ') b (Set.image.{u3, u2} Γ Γ' (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f) (HahnSeries.support.{u3, u1} Γ R _inst_1 _inst_2 x)))) -> (Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) b) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_notin_image_support HahnSeries.embDomain_notin_image_supportₓ'. -/
theorem embDomain_notin_image_support {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {b : Γ'}
(hb : b ∉ f '' x.support) : (embDomain f x).coeff b = 0 :=
dif_neg hb
#align hahn_series.emb_domain_notin_image_support HahnSeries.embDomain_notin_image_support
-/- warning: hahn_series.support_emb_domain_subset -> HahnSeries.support_embDomain_subset is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))} {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, HasSubset.Subset.{u3} (Set.{u3} Γ') (Set.hasSubset.{u3} Γ') (HahnSeries.support.{u3, u2} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f x)) (Set.image.{u1, u3} Γ Γ' (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) f) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))} {x : HahnSeries.{u3, u1} Γ R _inst_1 _inst_2}, HasSubset.Subset.{u2} (Set.{u2} Γ') (Set.instHasSubsetSet.{u2} Γ') (HahnSeries.support.{u2, u1} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f x)) (Set.image.{u3, u2} Γ Γ' (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f) (HahnSeries.support.{u3, u1} Γ R _inst_1 _inst_2 x))
-Case conversion may be inaccurate. Consider using '#align hahn_series.support_emb_domain_subset HahnSeries.support_embDomain_subsetₓ'. -/
theorem support_embDomain_subset {f : Γ ↪o Γ'} {x : HahnSeries Γ R} :
support (embDomain f x) ⊆ f '' x.support :=
by
@@ -487,34 +337,16 @@ theorem support_embDomain_subset {f : Γ ↪o Γ'} {x : HahnSeries Γ R} :
rw [mem_support, emb_domain_notin_image_support hg, Classical.not_not]
#align hahn_series.support_emb_domain_subset HahnSeries.support_embDomain_subset
-/- warning: hahn_series.emb_domain_notin_range -> HahnSeries.embDomain_notin_range is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))} {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {b : Γ'}, (Not (Membership.Mem.{u3, u3} Γ' (Set.{u3} Γ') (Set.hasMem.{u3} Γ') b (Set.range.{u3, succ u1} Γ' Γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) f)))) -> (Eq.{succ u2} R (HahnSeries.coeff.{u3, u2} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) b) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))} {x : HahnSeries.{u3, u1} Γ R _inst_1 _inst_2} {b : Γ'}, (Not (Membership.mem.{u2, u2} Γ' (Set.{u2} Γ') (Set.instMembershipSet.{u2} Γ') b (Set.range.{u2, succ u3} Γ' Γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f)))) -> (Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) b) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_notin_range HahnSeries.embDomain_notin_rangeₓ'. -/
theorem embDomain_notin_range {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {b : Γ'} (hb : b ∉ Set.range f) :
(embDomain f x).coeff b = 0 :=
embDomain_notin_image_support fun con => hb (Set.image_subset_range _ _ Con)
#align hahn_series.emb_domain_notin_range HahnSeries.embDomain_notin_range
-/- warning: hahn_series.emb_domain_zero -> HahnSeries.embDomain_zero is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) (OfNat.ofNat.{max u3 u2} (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) 0 (OfNat.mk.{max u3 u2} (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) 0 (Zero.zero.{max u3 u2} (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) (HahnSeries.hasZero.{u3, u2} Γ' R _inst_3 _inst_2))))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f (OfNat.ofNat.{max u3 u1} (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u3 u1} (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u3, u1} Γ R _inst_1 _inst_2)))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) 0 (Zero.toOfNat0.{max u1 u2} (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ' R _inst_3 _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_zero HahnSeries.embDomain_zeroₓ'. -/
@[simp]
theorem embDomain_zero {f : Γ ↪o Γ'} : embDomain f (0 : HahnSeries Γ R) = 0 := by ext;
simp [emb_domain_notin_image_support]
#align hahn_series.emb_domain_zero HahnSeries.embDomain_zero
-/- warning: hahn_series.emb_domain_single -> HahnSeries.embDomain_single is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))} {g : Γ} {r : R}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 g) r)) (coeFn.{max (succ (max u3 u2)) (succ u2), max (succ u2) (succ (max u3 u2))} (ZeroHom.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) _inst_2 (HahnSeries.hasZero.{u3, u2} Γ' R _inst_3 _inst_2)) (fun (_x : ZeroHom.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) _inst_2 (HahnSeries.hasZero.{u3, u2} Γ' R _inst_3 _inst_2)) => R -> (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) _inst_2 (HahnSeries.hasZero.{u3, u2} Γ' R _inst_3 _inst_2)) (HahnSeries.single.{u3, u2} Γ' R _inst_3 _inst_2 (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) f g)) r)
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))} {g : Γ} {r : R}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f (FunLike.coe.{max (succ u3) (succ u1), succ u1, max (succ u3) (succ u1)} (ZeroHom.{u1, max u1 u3} R (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u3, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u3 u1, u1, max u3 u1} (ZeroHom.{u1, max u1 u3} R (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u3, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u3, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u3 u1} R (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u3, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u3, u1} Γ R _inst_1 _inst_2 g) r)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2)) R (HahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2))) (HahnSeries.single.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2 (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f g)) r)
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_single HahnSeries.embDomain_singleₓ'. -/
@[simp]
theorem embDomain_single {f : Γ ↪o Γ'} {g : Γ} {r : R} :
embDomain f (single g r) = single (f g) r :=
@@ -528,12 +360,6 @@ theorem embDomain_single {f : Γ ↪o Γ'} {g : Γ} {r : R} :
rwa [support_single_of_ne hr, Set.image_singleton, Set.mem_singleton_iff]
#align hahn_series.emb_domain_single HahnSeries.embDomain_single
-/- warning: hahn_series.emb_domain_injective -> HahnSeries.embDomain_injective is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))}, Function.Injective.{max (succ u1) (succ u2), max (succ u3) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f)
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))}, Function.Injective.{max (succ u3) (succ u1), max (succ u1) (succ u2)} (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f)
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_injective HahnSeries.embDomain_injectiveₓ'. -/
theorem embDomain_injective {f : Γ ↪o Γ'} :
Function.Injective (embDomain f : HahnSeries Γ R → HahnSeries Γ' R) := fun x y xy =>
by
@@ -567,33 +393,15 @@ instance : AddMonoid (HahnSeries Γ R) where
zero_add x := by ext; apply zero_add
add_zero x := by ext; apply add_zero
-/- warning: hahn_series.add_coeff' -> HahnSeries.add_coeff' is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))}, Eq.{max (succ u1) (succ u2)} (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Γ -> R) (Γ -> R) (Γ -> R) (instHAdd.{max u1 u2} (Γ -> R) (Pi.instAdd.{u1, u2} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => AddZeroClass.toHasAdd.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)))) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) x) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) y))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddMonoid.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)} {y : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)}, Eq.{max (succ u2) (succ u1)} (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Γ -> R) (Γ -> R) (Γ -> R) (instHAdd.{max u2 u1} (Γ -> R) (Pi.instAdd.{u2, u1} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => AddZeroClass.toAdd.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2)))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) x) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) y))
-Case conversion may be inaccurate. Consider using '#align hahn_series.add_coeff' HahnSeries.add_coeff'ₓ'. -/
@[simp]
theorem add_coeff' {x y : HahnSeries Γ R} : (x + y).coeff = x.coeff + y.coeff :=
rfl
#align hahn_series.add_coeff' HahnSeries.add_coeff'
-/- warning: hahn_series.add_coeff -> HahnSeries.add_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (HAdd.hAdd.{u2, u2, u2} R R R (instHAdd.{u2} R (AddZeroClass.toHasAdd.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) x a) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) y a))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddMonoid.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)} {y : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)} {a : Γ}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ R _inst_1 _inst_2)) x y) a) (HAdd.hAdd.{u1, u1, u1} R R R (instHAdd.{u1} R (AddZeroClass.toAdd.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) x a) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) y a))
-Case conversion may be inaccurate. Consider using '#align hahn_series.add_coeff HahnSeries.add_coeffₓ'. -/
theorem add_coeff {x y : HahnSeries Γ R} {a : Γ} : (x + y).coeff a = x.coeff a + y.coeff a :=
rfl
#align hahn_series.add_coeff HahnSeries.add_coeff
-/- warning: hahn_series.support_add_subset -> HahnSeries.support_add_subset is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))}, HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 _inst_2)) x y)) (Union.union.{u1} (Set.{u1} Γ) (Set.hasUnion.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) x) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) y))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddMonoid.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)} {y : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)}, HasSubset.Subset.{u2} (Set.{u2} Γ) (Set.instHasSubsetSet.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ R _inst_1 _inst_2)) x y)) (Union.union.{u2} (Set.{u2} Γ) (Set.instUnionSet.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) x) (HahnSeries.support.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) y))
-Case conversion may be inaccurate. Consider using '#align hahn_series.support_add_subset HahnSeries.support_add_subsetₓ'. -/
theorem support_add_subset {x y : HahnSeries Γ R} : support (x + y) ⊆ support x ∪ support y :=
fun a ha => by
rw [mem_support, add_coeff] at ha
@@ -602,9 +410,6 @@ theorem support_add_subset {x y : HahnSeries Γ R} : support (x + y) ⊆ support
rw [ha.1, ha.2, add_zero]
#align hahn_series.support_add_subset HahnSeries.support_add_subset
-/- warning: hahn_series.min_order_le_order_add -> HahnSeries.min_order_le_order_add is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.min_order_le_order_add HahnSeries.min_order_le_order_addₓ'. -/
theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y : HahnSeries Γ R}
(hxy : x + y ≠ 0) : min x.order y.order ≤ (x + y).order :=
by
@@ -617,24 +422,12 @@ theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y :
rw [Set.IsWf.min_union]
#align hahn_series.min_order_le_order_add HahnSeries.min_order_le_order_add
-/- warning: hahn_series.single.add_monoid_hom -> HahnSeries.single.addMonoidHom is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R], Γ -> (AddMonoidHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (AddMonoid.toAddZeroClass.{u2} R _inst_2) (AddMonoid.toAddZeroClass.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.addMonoid.{u1, u2} Γ R _inst_1 _inst_2)))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R], Γ -> (AddMonoidHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R _inst_2)) (AddMonoid.toAddZeroClass.{u2} R _inst_2) (AddMonoid.toAddZeroClass.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R _inst_2)) (HahnSeries.instAddMonoidHahnSeriesToZero.{u1, u2} Γ R _inst_1 _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.single.add_monoid_hom HahnSeries.single.addMonoidHomₓ'. -/
/-- `single` as an additive monoid/group homomorphism -/
@[simps]
def single.addMonoidHom (a : Γ) : R →+ HahnSeries Γ R :=
{ single a with map_add' := fun x y => by ext b; by_cases h : b = a <;> simp [h] }
#align hahn_series.single.add_monoid_hom HahnSeries.single.addMonoidHom
-/- warning: hahn_series.coeff.add_monoid_hom -> HahnSeries.coeff.addMonoidHom is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R], Γ -> (AddMonoidHom.{max u1 u2, u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) R (AddMonoid.toAddZeroClass.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.addMonoid.{u1, u2} Γ R _inst_1 _inst_2)) (AddMonoid.toAddZeroClass.{u2} R _inst_2))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R], Γ -> (AddMonoidHom.{max u2 u1, u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R _inst_2)) R (AddMonoid.toAddZeroClass.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R _inst_2)) (HahnSeries.instAddMonoidHahnSeriesToZero.{u1, u2} Γ R _inst_1 _inst_2)) (AddMonoid.toAddZeroClass.{u2} R _inst_2))
-Case conversion may be inaccurate. Consider using '#align hahn_series.coeff.add_monoid_hom HahnSeries.coeff.addMonoidHomₓ'. -/
/-- `coeff g` as an additive monoid/group homomorphism -/
@[simps]
def coeff.addMonoidHom (g : Γ) : HahnSeries Γ R →+ R
@@ -648,12 +441,6 @@ section Domain
variable {Γ' : Type _} [PartialOrder Γ']
-/- warning: hahn_series.emb_domain_add -> HahnSeries.embDomain_add is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] (f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))), Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R _inst_3 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) Γ' _inst_3 f (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ' R _inst_3 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ' R _inst_3 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ' R _inst_3 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (instHAdd.{max u3 u2} (HahnSeries.{u3, u2} Γ' R _inst_3 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.hasAdd.{u3, u2} Γ' R _inst_3 _inst_2)) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) Γ' _inst_3 f x) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) Γ' _inst_3 f y))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddMonoid.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] (f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) (x : HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (y : HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ' R _inst_3 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) Γ' _inst_3 f (HAdd.hAdd.{max u3 u1, max u3 u1, max u3 u1} (HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u3 u1} (HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u3, u1} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u2, u1} Γ' R _inst_3 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ' R _inst_3 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ' R _inst_3 (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u1 u2} (HahnSeries.{u2, u1} Γ' R _inst_3 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ' R _inst_3 _inst_2)) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) Γ' _inst_3 f x) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) Γ' _inst_3 f y))
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_add HahnSeries.embDomain_addₓ'. -/
theorem embDomain_add (f : Γ ↪o Γ') (x y : HahnSeries Γ R) :
embDomain f (x + y) = embDomain f x + embDomain f y :=
by
@@ -685,64 +472,28 @@ instance : AddGroup (HahnSeries Γ R) :=
exact x.is_pwo_support }
add_left_neg := fun x => by ext; apply add_left_neg }
-/- warning: hahn_series.neg_coeff' -> HahnSeries.neg_coeff' is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))}, Eq.{max (succ u1) (succ u2)} (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (Neg.neg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2))) x)) (Neg.neg.{max u1 u2} (Γ -> R) (Pi.instNeg.{u1, u2} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => SubNegMonoid.toHasNeg.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) x))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))}, Eq.{max (succ u2) (succ u1)} (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (Neg.neg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (NegZeroClass.toNeg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegZeroMonoid.toNegZeroClass.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubtractionMonoid.toSubNegZeroMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubtractionMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2))))) x)) (Neg.neg.{max u2 u1} (Γ -> R) (Pi.instNeg.{u2, u1} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => NegZeroClass.toNeg.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x))
-Case conversion may be inaccurate. Consider using '#align hahn_series.neg_coeff' HahnSeries.neg_coeff'ₓ'. -/
@[simp]
theorem neg_coeff' {x : HahnSeries Γ R} : (-x).coeff = -x.coeff :=
rfl
#align hahn_series.neg_coeff' HahnSeries.neg_coeff'
-/- warning: hahn_series.neg_coeff -> HahnSeries.neg_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (Neg.neg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2))) x) a) (Neg.neg.{u2} R (SubNegMonoid.toHasNeg.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) x a))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))} {a : Γ}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (Neg.neg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (NegZeroClass.toNeg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegZeroMonoid.toNegZeroClass.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubtractionMonoid.toSubNegZeroMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubtractionMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2))))) x) a) (Neg.neg.{u1} R (NegZeroClass.toNeg.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x a))
-Case conversion may be inaccurate. Consider using '#align hahn_series.neg_coeff HahnSeries.neg_coeffₓ'. -/
theorem neg_coeff {x : HahnSeries Γ R} {a : Γ} : (-x).coeff a = -x.coeff a :=
rfl
#align hahn_series.neg_coeff HahnSeries.neg_coeff
-/- warning: hahn_series.support_neg -> HahnSeries.support_neg is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))}, Eq.{succ u1} (Set.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (Neg.neg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2))) x)) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) x)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))}, Eq.{succ u2} (Set.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (Neg.neg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (NegZeroClass.toNeg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegZeroMonoid.toNegZeroClass.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubtractionMonoid.toSubNegZeroMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubtractionMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2))))) x)) (HahnSeries.support.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x)
-Case conversion may be inaccurate. Consider using '#align hahn_series.support_neg HahnSeries.support_negₓ'. -/
@[simp]
theorem support_neg {x : HahnSeries Γ R} : (-x).support = x.support := by ext; simp
#align hahn_series.support_neg HahnSeries.support_neg
-/- warning: hahn_series.sub_coeff' -> HahnSeries.sub_coeff' is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))} {y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))}, Eq.{max (succ u1) (succ u2)} (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (instHSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2)))) x y)) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (Γ -> R) (Γ -> R) (Γ -> R) (instHSub.{max u1 u2} (Γ -> R) (Pi.instSub.{u1, u2} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => SubNegMonoid.toHasSub.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) x) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) y))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))} {y : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))}, Eq.{max (succ u2) (succ u1)} (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (instHSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegMonoid.toSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2)))) x y)) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} (Γ -> R) (Γ -> R) (Γ -> R) (instHSub.{max u2 u1} (Γ -> R) (Pi.instSub.{u2, u1} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => SubNegMonoid.toSub.{u1} R (AddGroup.toSubNegMonoid.{u1} R _inst_2)))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) y))
-Case conversion may be inaccurate. Consider using '#align hahn_series.sub_coeff' HahnSeries.sub_coeff'ₓ'. -/
@[simp]
theorem sub_coeff' {x y : HahnSeries Γ R} : (x - y).coeff = x.coeff - y.coeff := by ext;
simp [sub_eq_add_neg]
#align hahn_series.sub_coeff' HahnSeries.sub_coeff'
-/- warning: hahn_series.sub_coeff -> HahnSeries.sub_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))} {y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (instHSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2)))) x y) a) (HSub.hSub.{u2, u2, u2} R R R (instHSub.{u2} R (SubNegMonoid.toHasSub.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) x a) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) y a))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))} {y : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))} {a : Γ}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (instHSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegMonoid.toSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2)))) x y) a) (HSub.hSub.{u1, u1, u1} R R R (instHSub.{u1} R (SubNegMonoid.toSub.{u1} R (AddGroup.toSubNegMonoid.{u1} R _inst_2))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x a) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) y a))
-Case conversion may be inaccurate. Consider using '#align hahn_series.sub_coeff HahnSeries.sub_coeffₓ'. -/
theorem sub_coeff {x y : HahnSeries Γ R} {a : Γ} : (x - y).coeff a = x.coeff a - y.coeff a := by
simp
#align hahn_series.sub_coeff HahnSeries.sub_coeff
-/- warning: hahn_series.order_neg -> HahnSeries.order_neg is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] [_inst_3 : Zero.{u1} Γ] {f : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))}, Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) _inst_3 (Neg.neg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2))) f)) (HahnSeries.order.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) _inst_3 f)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] [_inst_3 : Zero.{u2} Γ] {f : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))}, Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) _inst_3 (Neg.neg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (NegZeroClass.toNeg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegZeroMonoid.toNegZeroClass.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubtractionMonoid.toSubNegZeroMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubtractionMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2))))) f)) (HahnSeries.order.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) _inst_3 f)
-Case conversion may be inaccurate. Consider using '#align hahn_series.order_neg HahnSeries.order_negₓ'. -/
@[simp]
theorem order_neg [Zero Γ] {f : HahnSeries Γ R} : (-f).order = f.order :=
by
@@ -766,12 +517,6 @@ instance : SMul R (HahnSeries Γ V) :=
{ coeff := r • x.coeff
isPwo_support' := x.isPwo_support.mono (Function.support_smul_subset_right r x.coeff) }⟩
-/- warning: hahn_series.smul_coeff -> HahnSeries.smul_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] {V : Type.{u3}} [_inst_2 : Monoid.{u2} R] [_inst_3 : AddMonoid.{u3} V] [_inst_4 : DistribMulAction.{u2, u3} R V _inst_2 _inst_3] {r : R} {x : HahnSeries.{u1, u3} Γ V _inst_1 (AddZeroClass.toHasZero.{u3} V (AddMonoid.toAddZeroClass.{u3} V _inst_3))} {a : Γ}, Eq.{succ u3} V (HahnSeries.coeff.{u1, u3} Γ V _inst_1 (AddZeroClass.toHasZero.{u3} V (AddMonoid.toAddZeroClass.{u3} V _inst_3)) (SMul.smul.{u2, max u1 u3} R (HahnSeries.{u1, u3} Γ V _inst_1 (AddZeroClass.toHasZero.{u3} V (AddMonoid.toAddZeroClass.{u3} V _inst_3))) (HahnSeries.hasSmul.{u1, u2, u3} Γ R _inst_1 V _inst_2 _inst_3 _inst_4) r x) a) (SMul.smul.{u2, u3} R V (SMulZeroClass.toHasSmul.{u2, u3} R V (AddZeroClass.toHasZero.{u3} V (AddMonoid.toAddZeroClass.{u3} V _inst_3)) (DistribSMul.toSmulZeroClass.{u2, u3} R V (AddMonoid.toAddZeroClass.{u3} V _inst_3) (DistribMulAction.toDistribSMul.{u2, u3} R V _inst_2 _inst_3 _inst_4))) r (HahnSeries.coeff.{u1, u3} Γ V _inst_1 (AddZeroClass.toHasZero.{u3} V (AddMonoid.toAddZeroClass.{u3} V _inst_3)) x a))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] {V : Type.{u2}} [_inst_2 : Monoid.{u1} R] [_inst_3 : AddMonoid.{u2} V] [_inst_4 : DistribMulAction.{u1, u2} R V _inst_2 _inst_3] {r : R} {x : HahnSeries.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3)} {a : Γ}, Eq.{succ u2} V (HahnSeries.coeff.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3) (HSMul.hSMul.{u1, max u3 u2, max u3 u2} R (HahnSeries.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3)) (HahnSeries.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3)) (instHSMul.{u1, max u3 u2} R (HahnSeries.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3)) (HahnSeries.instSMulHahnSeriesToZero.{u3, u1, u2} Γ R _inst_1 V _inst_2 _inst_3 _inst_4)) r x) a) (HSMul.hSMul.{u1, u2, u2} R V V (instHSMul.{u1, u2} R V (SMulZeroClass.toSMul.{u1, u2} R V (AddMonoid.toZero.{u2} V _inst_3) (DistribSMul.toSMulZeroClass.{u1, u2} R V (AddMonoid.toAddZeroClass.{u2} V _inst_3) (DistribMulAction.toDistribSMul.{u1, u2} R V _inst_2 _inst_3 _inst_4)))) r (HahnSeries.coeff.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3) x a))
-Case conversion may be inaccurate. Consider using '#align hahn_series.smul_coeff HahnSeries.smul_coeffₓ'. -/
@[simp]
theorem smul_coeff {r : R} {x : HahnSeries Γ V} {a : Γ} : (r • x).coeff a = r • x.coeff a :=
rfl
@@ -805,24 +550,12 @@ instance : Module R (HahnSeries Γ V) :=
zero_smul := fun _ => by ext; simp
add_smul := fun _ _ _ => by ext; simp [add_smul] }
-/- warning: hahn_series.single.linear_map -> HahnSeries.single.linearMap is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R], Γ -> (LinearMap.{u2, u2, u2, max u1 u2} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) R (HahnSeries.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.addCommMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Semiring.toModule.{u2} R _inst_2) (HahnSeries.module.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R], Γ -> (LinearMap.{u2, u2, u2, max u2 u1} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) R (HahnSeries.{u1, u2} Γ R _inst_1 (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Semiring.toModule.{u2} R _inst_2) (HahnSeries.instModuleHahnSeriesToZeroToAddMonoidInstAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.single.linear_map HahnSeries.single.linearMapₓ'. -/
/-- `single` as a linear map -/
@[simps]
def single.linearMap (a : Γ) : R →ₗ[R] HahnSeries Γ R :=
{ single.addMonoidHom a with map_smul' := fun r s => by ext b; by_cases h : b = a <;> simp [h] }
#align hahn_series.single.linear_map HahnSeries.single.linearMap
-/- warning: hahn_series.coeff.linear_map -> HahnSeries.coeff.linearMap is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R], Γ -> (LinearMap.{u2, u2, max u1 u2, u2} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) (HahnSeries.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) R (HahnSeries.addCommMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.module.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)) (Semiring.toModule.{u2} R _inst_2))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R], Γ -> (LinearMap.{u2, u2, max u2 u1, u2} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) (HahnSeries.{u1, u2} Γ R _inst_1 (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) R (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.instModuleHahnSeriesToZeroToAddMonoidInstAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)) (Semiring.toModule.{u2} R _inst_2))
-Case conversion may be inaccurate. Consider using '#align hahn_series.coeff.linear_map HahnSeries.coeff.linearMapₓ'. -/
/-- `coeff g` as a linear map -/
@[simps]
def coeff.linearMap (g : Γ) : HahnSeries Γ R →ₗ[R] R :=
@@ -833,12 +566,6 @@ section Domain
variable {Γ' : Type _} [PartialOrder Γ']
-/- warning: hahn_series.emb_domain_smul -> HahnSeries.embDomain_smul is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R] {Γ' : Type.{u3}} [_inst_5 : PartialOrder.{u3} Γ'] (f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_5))) (r : R) (x : HahnSeries.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))), Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R _inst_5 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) Γ' _inst_5 f (SMul.smul.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasSmul.{u1, u2, u2} Γ R _inst_1 R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Module.toDistribMulAction.{u2, u2} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2))) r x)) (SMul.smul.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R _inst_5 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasSmul.{u3, u2, u2} Γ' R _inst_5 R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Module.toDistribMulAction.{u2, u2} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2))) r (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) Γ' _inst_5 f x))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Semiring.{u1} R] {Γ' : Type.{u2}} [_inst_5 : PartialOrder.{u2} Γ'] (f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_5))) (r : R) (x : HahnSeries.{u3, u1} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ' R _inst_5 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2)) Γ' _inst_5 f (HSMul.hSMul.{u1, max u3 u1, max u3 u1} R (HahnSeries.{u3, u1} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.{u3, u1} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (instHSMul.{u1, max u3 u1} R (HahnSeries.{u3, u1} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.instSMulHahnSeriesToZero.{u3, u1, u1} Γ R _inst_1 R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Module.toDistribMulAction.{u1, u1} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2))) (Semiring.toModule.{u1} R _inst_2)))) r x)) (HSMul.hSMul.{u1, max u2 u1, max u1 u2} R (HahnSeries.{u2, u1} Γ' R _inst_5 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ' R _inst_5 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (instHSMul.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ' R _inst_5 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.instSMulHahnSeriesToZero.{u2, u1, u1} Γ' R _inst_5 R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Module.toDistribMulAction.{u1, u1} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2))) (Semiring.toModule.{u1} R _inst_2)))) r (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2)) Γ' _inst_5 f x))
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_smul HahnSeries.embDomain_smulₓ'. -/
theorem embDomain_smul (f : Γ ↪o Γ') (r : R) (x : HahnSeries Γ R) :
embDomain f (r • x) = r • embDomain f x := by
ext g
@@ -848,12 +575,6 @@ theorem embDomain_smul (f : Γ ↪o Γ') (r : R) (x : HahnSeries Γ R) :
· simp [emb_domain_notin_range, hg]
#align hahn_series.emb_domain_smul HahnSeries.embDomain_smul
-/- warning: hahn_series.emb_domain_linear_map -> HahnSeries.embDomainLinearMap is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R] {Γ' : Type.{u3}} [_inst_5 : PartialOrder.{u3} Γ'], (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_5))) -> (LinearMap.{u2, u2, max u1 u2, max u3 u2} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) (HahnSeries.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u3, u2} Γ' R _inst_5 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.addCommMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.addCommMonoid.{u3, u2} Γ' R _inst_5 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.module.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)) (HahnSeries.module.{u3, u2, u2} Γ' R _inst_5 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R] {Γ' : Type.{u3}} [_inst_5 : PartialOrder.{u3} Γ'], (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toLE.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_5))) -> (LinearMap.{u2, u2, max u2 u1, max u2 u3} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) (HahnSeries.{u1, u2} Γ R _inst_1 (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ' R _inst_5 (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u3, u2} Γ' R _inst_5 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.instModuleHahnSeriesToZeroToAddMonoidInstAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)) (HahnSeries.instModuleHahnSeriesToZeroToAddMonoidInstAddCommMonoidHahnSeriesToZeroToAddMonoid.{u3, u2, u2} Γ' R _inst_5 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_linear_map HahnSeries.embDomainLinearMapₓ'. -/
/-- Extending the domain of Hahn series is a linear map. -/
@[simps]
def embDomainLinearMap (f : Γ ↪o Γ') : HahnSeries Γ R →ₗ[R] HahnSeries Γ' R
@@ -874,46 +595,22 @@ variable [OrderedCancelAddCommMonoid Γ]
instance [Zero R] [One R] : One (HahnSeries Γ R) :=
⟨single 0 1⟩
-/- warning: hahn_series.one_coeff -> HahnSeries.one_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : One.{u2} R] {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2 (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2) (HahnSeries.hasOne.{u1, u2} Γ R _inst_1 _inst_2 _inst_3)))) a) (ite.{succ u2} R (Eq.{succ u1} Γ a (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))) (Classical.propDecidable (Eq.{succ u1} Γ a (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R _inst_3))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : One.{u2} R] {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2 (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2) 1 (One.toOfNat1.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2) (HahnSeries.instOneHahnSeriesToPartialOrder.{u1, u2} Γ R _inst_1 _inst_2 _inst_3))) a) (ite.{succ u2} R (Eq.{succ u1} Γ a (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) (Classical.propDecidable (Eq.{succ u1} Γ a (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R _inst_3)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.one_coeff HahnSeries.one_coeffₓ'. -/
@[simp]
theorem one_coeff [Zero R] [One R] {a : Γ} :
(1 : HahnSeries Γ R).coeff a = if a = 0 then 1 else 0 :=
single_coeff
#align hahn_series.one_coeff HahnSeries.one_coeff
-/- warning: hahn_series.single_zero_one -> HahnSeries.single_zero_one is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_2 : Zero.{u1} R] [_inst_3 : One.{u1} R], Eq.{succ u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) (coeFn.{succ u1, succ u1} (ZeroHom.{u1, u1} R (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) _inst_2 (HahnSeries.hasZero.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2)) (fun (_x : ZeroHom.{u1, u1} R (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) _inst_2 (HahnSeries.hasZero.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2)) => R -> (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2)) (ZeroHom.hasCoeToFun.{u1, u1} R (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) _inst_2 (HahnSeries.hasZero.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2)) (HahnSeries.single.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2 (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R _inst_3)))) (OfNat.ofNat.{u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) 1 (OfNat.mk.{u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) 1 (One.one.{u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) (HahnSeries.hasOne.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_2 _inst_3))))
-but is expected to have type
- forall {R : Type.{u1}} [_inst_2 : Zero.{u1} R] [_inst_3 : One.{u1} R], Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R _inst_3))) (FunLike.coe.{succ u1, succ u1, succ u1} (ZeroHom.{u1, u1} R (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) _x) (ZeroHomClass.toFunLike.{u1, u1, u1} (ZeroHom.{u1, u1} R (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2)) R (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) (ZeroHom.zeroHomClass.{u1, u1} R (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2))) (HahnSeries.single.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2 (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R _inst_3))) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R _inst_3))) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R _inst_3))) (HahnSeries.instOneHahnSeriesToPartialOrder.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_2 _inst_3)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.single_zero_one HahnSeries.single_zero_oneₓ'. -/
@[simp]
theorem single_zero_one [Zero R] [One R] : single 0 (1 : R) = 1 :=
rfl
#align hahn_series.single_zero_one HahnSeries.single_zero_one
-/- warning: hahn_series.support_one -> HahnSeries.support_one is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : MulZeroOneClass.{u2} R] [_inst_3 : Nontrivial.{u2} R], Eq.{succ u1} (Set.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2)) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasOne.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2)) (MulOneClass.toHasOne.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R _inst_2))))))) (Singleton.singleton.{u1, u1} Γ (Set.{u1} Γ) (Set.hasSingleton.{u1} Γ) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))))))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : MulZeroOneClass.{u2} R] [_inst_3 : Nontrivial.{u2} R], Eq.{succ u1} (Set.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2)) 1 (One.toOfNat1.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2)) (HahnSeries.instOneHahnSeriesToPartialOrder.{u1, u2} Γ R _inst_1 (MulZeroOneClass.toZero.{u2} R _inst_2) (MulOneClass.toOne.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R _inst_2)))))) (Singleton.singleton.{u1, u1} Γ (Set.{u1} Γ) (Set.instSingletonSet.{u1} Γ) (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.support_one HahnSeries.support_oneₓ'. -/
@[simp]
theorem support_one [MulZeroOneClass R] [Nontrivial R] : support (1 : HahnSeries Γ R) = {0} :=
support_single_of_ne one_ne_zero
#align hahn_series.support_one HahnSeries.support_one
-/- warning: hahn_series.order_one -> HahnSeries.order_one is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : MulZeroOneClass.{u2} R], Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasOne.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2)) (MulOneClass.toHasOne.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R _inst_2))))))) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : MulZeroOneClass.{u2} R], Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2) (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2)) 1 (One.toOfNat1.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2)) (HahnSeries.instOneHahnSeriesToPartialOrder.{u1, u2} Γ R _inst_1 (MulZeroOneClass.toZero.{u2} R _inst_2) (MulOneClass.toOne.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R _inst_2)))))) (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.order_one HahnSeries.order_oneₓ'. -/
@[simp]
theorem order_one [MulZeroOneClass R] : order (1 : HahnSeries Γ R) = 0 :=
by
@@ -939,12 +636,6 @@ instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R)
simp [not_nonempty_iff_eq_empty.1 ha]
is_pwo_support_add_antidiagonal.mono h }
-/- warning: hahn_series.mul_coeff -> HahnSeries.mul_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) (HahnSeries.isPwo_support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.isPwo_support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij))))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) (HahnSeries.isPwo_support.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.isPwo_support.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.mul_coeff HahnSeries.mul_coeffₓ'. -/
@[simp]
theorem mul_coeff [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} :
(x * y).coeff a =
@@ -952,12 +643,6 @@ theorem mul_coeff [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ}
rfl
#align hahn_series.mul_coeff HahnSeries.mul_coeff
-/- warning: hahn_series.mul_coeff_right' -> HahnSeries.mul_coeff_right' is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {s : Set.{u1} Γ} (hs : Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)) s), (HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) s) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) s (HahnSeries.isPwo_support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) hs a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij)))))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {s : Set.{u1} Γ} (hs : Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)) s), (HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.instHasSubsetSet.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) s) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) s (HahnSeries.isPwo_support.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) hs a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij)))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.mul_coeff_right' HahnSeries.mul_coeff_right'ₓ'. -/
theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
(hs : s.IsPwo) (hys : y.support ⊆ s) :
(x * y).coeff a =
@@ -970,12 +655,6 @@ theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {
rw [hb.2 hb.1.1 hb.1.2.2, MulZeroClass.mul_zero]
#align hahn_series.mul_coeff_right' HahnSeries.mul_coeff_right'
-/- warning: hahn_series.mul_coeff_left' -> HahnSeries.mul_coeff_left' is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {s : Set.{u1} Γ} (hs : Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)) s), (HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) s) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 s (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) hs (HahnSeries.isPwo_support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij)))))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {s : Set.{u1} Γ} (hs : Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)) s), (HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.instHasSubsetSet.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) s) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 s (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) hs (HahnSeries.isPwo_support.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij)))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.mul_coeff_left' HahnSeries.mul_coeff_left'ₓ'. -/
theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
(hs : s.IsPwo) (hxs : x.support ⊆ s) :
(x * y).coeff a =
@@ -1014,12 +693,6 @@ instance [NonUnitalNonAssocSemiring R] : Distrib (HahnSeries Γ R) :=
intro h
rw [h.1, h.2, add_zero] }
-/- warning: hahn_series.single_mul_coeff_add -> HahnSeries.single_mul_coeff_add is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {b : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) b) r) x) (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toHasAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) a b)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) r (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {b : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (ZeroHom.zeroHomClass.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) b) r) x) (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) a b)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) r (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a))
-Case conversion may be inaccurate. Consider using '#align hahn_series.single_mul_coeff_add HahnSeries.single_mul_coeff_addₓ'. -/
theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ}
{b : Γ} : (single b r * x).coeff (a + b) = r * x.coeff a :=
by
@@ -1050,12 +723,6 @@ theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
· simp
#align hahn_series.single_mul_coeff_add HahnSeries.single_mul_coeff_add
-/- warning: hahn_series.mul_single_coeff_add -> HahnSeries.mul_single_coeff_add is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {b : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) b) r)) (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toHasAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) a b)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a) r)
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {b : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (ZeroHom.zeroHomClass.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) b) r)) (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) a b)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a) r)
-Case conversion may be inaccurate. Consider using '#align hahn_series.mul_single_coeff_add HahnSeries.mul_single_coeff_addₓ'. -/
theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ}
{b : Γ} : (x * single b r).coeff (a + b) = x.coeff a * r :=
by
@@ -1084,41 +751,20 @@ theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
· simp
#align hahn_series.mul_single_coeff_add HahnSeries.mul_single_coeff_add
-/- warning: hahn_series.mul_single_zero_coeff -> HahnSeries.mul_single_zero_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))) r)) a) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a) r)
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u2 u1, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (ZeroHom.zeroHomClass.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) r)) a) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a) r)
-Case conversion may be inaccurate. Consider using '#align hahn_series.mul_single_zero_coeff HahnSeries.mul_single_zero_coeffₓ'. -/
@[simp]
theorem mul_single_zero_coeff [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ} :
(x * single 0 r).coeff a = x.coeff a * r := by rw [← add_zero a, mul_single_coeff_add, add_zero]
#align hahn_series.mul_single_zero_coeff HahnSeries.mul_single_zero_coeff
-/- warning: hahn_series.single_zero_mul_coeff -> HahnSeries.single_zero_mul_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))) r) x) a) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) r (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (ZeroHom.zeroHomClass.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) r) x) a) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) r (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a))
-Case conversion may be inaccurate. Consider using '#align hahn_series.single_zero_mul_coeff HahnSeries.single_zero_mul_coeffₓ'. -/
theorem single_zero_mul_coeff [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ} :
(single 0 r * x).coeff a = r * x.coeff a := by rw [← add_zero a, single_mul_coeff_add, add_zero]
#align hahn_series.single_zero_mul_coeff HahnSeries.single_zero_mul_coeff
-/- warning: hahn_series.single_zero_mul_eq_smul -> HahnSeries.single_zero_mul_eq_smul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.single_zero_mul_eq_smul HahnSeries.single_zero_mul_eq_smulₓ'. -/
@[simp]
theorem single_zero_mul_eq_smul [Semiring R] {r : R} {x : HahnSeries Γ R} :
single 0 r * x = r • x := by ext; exact single_zero_mul_coeff
#align hahn_series.single_zero_mul_eq_smul HahnSeries.single_zero_mul_eq_smul
-/- warning: hahn_series.support_mul_subset_add_support -> HahnSeries.support_mul_subset_add_support is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))}, HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{u1, u1, u1} (Set.{u1} Γ) (Set.{u1} Γ) (Set.{u1} Γ) (instHAdd.{u1} (Set.{u1} Γ) (Set.add.{u1} Γ (AddZeroClass.toHasAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))}, HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.instHasSubsetSet.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{u1, u1, u1} (Set.{u1} Γ) (Set.{u1} Γ) (Set.{u1} Γ) (instHAdd.{u1} (Set.{u1} Γ) (Set.add.{u1} Γ (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y))
-Case conversion may be inaccurate. Consider using '#align hahn_series.support_mul_subset_add_support HahnSeries.support_mul_subset_add_supportₓ'. -/
theorem support_mul_subset_add_support [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} :
support (x * y) ⊆ support x + support y :=
by
@@ -1130,9 +776,6 @@ theorem support_mul_subset_add_support [NonUnitalNonAssocSemiring R] {x y : Hahn
simp [hx]
#align hahn_series.support_mul_subset_add_support HahnSeries.support_mul_subset_add_support
-/- warning: hahn_series.mul_coeff_order_add_order -> HahnSeries.mul_coeff_order_add_order is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.mul_coeff_order_add_order HahnSeries.mul_coeff_order_add_orderₓ'. -/
theorem mul_coeff_order_add_order {Γ} [LinearOrderedCancelAddCommMonoid Γ]
[NonUnitalNonAssocSemiring R] (x y : HahnSeries Γ R) :
(x * y).coeff (x.order + y.order) = x.coeff x.order * y.coeff y.order :=
@@ -1252,9 +895,6 @@ instance {Γ} [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R] :
IsDomain (HahnSeries Γ R) :=
NoZeroDivisors.to_isDomain _
-/- warning: hahn_series.order_mul -> HahnSeries.order_mul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.order_mul HahnSeries.order_mulₓ'. -/
@[simp]
theorem order_mul {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocSemiring R]
[NoZeroDivisors R] {x y : HahnSeries Γ R} (hx : x ≠ 0) (hy : y ≠ 0) :
@@ -1267,12 +907,6 @@ theorem order_mul {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocS
exact Set.IsWf.min_le_min_of_subset support_mul_subset_add_support
#align hahn_series.order_mul HahnSeries.order_mul
-/- warning: hahn_series.order_pow -> HahnSeries.order_pow is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : Semiring.{u1} R] [_inst_4 : NoZeroDivisors.{u1} R (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3)))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))] (x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) (n : Nat), Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3)))) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) (HPow.hPow.{max u2 u1, 0, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) Nat (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) (instHPow.{max u2 u1, 0} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) Nat (Monoid.Pow.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) (MonoidWithZero.toMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) (Semiring.toMonoidWithZero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) (HahnSeries.semiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3))))) x n)) (SMul.smul.{0, u2} Nat Γ (AddMonoid.SMul.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)))))) n (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3)))) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) x))
-but is expected to have type
- forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : Semiring.{u1} R] [_inst_4 : NoZeroDivisors.{u1} R (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))] (x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) (n : Nat), Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) (HPow.hPow.{max u1 u2, 0, max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) Nat (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) (instHPow.{max u1 u2, 0} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) Nat (Monoid.Pow.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) (MonoidWithZero.toMonoid.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) (Semiring.toMonoidWithZero.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3))))) x n)) (HSMul.hSMul.{0, u2, u2} Nat Γ Γ (instHSMul.{0, u2} Nat Γ (AddMonoid.SMul.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) n (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) x))
-Case conversion may be inaccurate. Consider using '#align hahn_series.order_pow HahnSeries.order_powₓ'. -/
@[simp]
theorem order_pow {Γ} [LinearOrderedCancelAddCommMonoid Γ] [Semiring R] [NoZeroDivisors R]
(x : HahnSeries Γ R) (n : ℕ) : (x ^ n).order = n • x.order :=
@@ -1288,9 +922,6 @@ section NonUnitalNonAssocSemiring
variable [NonUnitalNonAssocSemiring R]
-/- warning: hahn_series.single_mul_single -> HahnSeries.single_mul_single is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.single_mul_single HahnSeries.single_mul_singleₓ'. -/
@[simp]
theorem single_mul_single {a b : Γ} {r s : R} : single a r * single b s = single (a + b) (r * s) :=
by
@@ -1311,12 +942,6 @@ section NonAssocSemiring
variable [NonAssocSemiring R]
-/- warning: hahn_series.C -> HahnSeries.C is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)
-Case conversion may be inaccurate. Consider using '#align hahn_series.C HahnSeries.Cₓ'. -/
/-- `C a` is the constant Hahn Series `a`. `C` is provided as a ring homomorphism. -/
@[simps]
def C : R →+* HahnSeries Γ R where
@@ -1327,34 +952,16 @@ def C : R →+* HahnSeries Γ R where
map_mul' x y := by rw [single_mul_single, zero_add]
#align hahn_series.C HahnSeries.C
-/- warning: hahn_series.C_zero -> HahnSeries.C_zero is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : NonAssocSemiring.{u1} R], Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2)) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))))) (HahnSeries.C.{u2, u1} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))))) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2)))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.C_zero HahnSeries.C_zeroₓ'. -/
@[simp]
theorem C_zero : C (0 : R) = (0 : HahnSeries Γ R) :=
C.map_zero
#align hahn_series.C_zero HahnSeries.C_zero
-/- warning: hahn_series.C_one -> HahnSeries.C_one is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R _inst_2))))))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasOne.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))) (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R _inst_2)))))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : NonAssocSemiring.{u1} R], Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (NonAssocSemiring.toOne.{u1} R _inst_2)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2)) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))))) (HahnSeries.C.{u2, u1} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (NonAssocSemiring.toOne.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) 1 (One.toOfNat1.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R _inst_1 (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2)) (NonAssocSemiring.toOne.{u1} R _inst_2))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.C_one HahnSeries.C_oneₓ'. -/
@[simp]
theorem C_one : C (1 : R) = (1 : HahnSeries Γ R) :=
C.map_one
#align hahn_series.C_one HahnSeries.C_one
-/- warning: hahn_series.C_injective -> HahnSeries.C_injective is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], Function.Injective.{succ u2, max (succ u1) (succ u2)} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], Function.Injective.{succ u2, max (succ u1) (succ u2)} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _x) (MulHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2) (RingHom.instRingHomClassRingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2))))) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2))
-Case conversion may be inaccurate. Consider using '#align hahn_series.C_injective HahnSeries.C_injectiveₓ'. -/
theorem C_injective : Function.Injective (C : R → HahnSeries Γ R) :=
by
intro r s rs
@@ -1363,12 +970,6 @@ theorem C_injective : Function.Injective (C : R → HahnSeries Γ R) :=
rwa [C_apply, single_coeff_same, C_apply, single_coeff_same] at h
#align hahn_series.C_injective HahnSeries.C_injective
-/- warning: hahn_series.C_ne_zero -> HahnSeries.C_ne_zero is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R] {r : R}, (Ne.{succ u2} R r (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))))) -> (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2) r) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))))))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R] {r : R}, (Ne.{succ u2} R r (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))))) -> (Ne.{max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _x) (MulHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2) (RingHom.instRingHomClassRingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2))))) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2) r) (OfNat.ofNat.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) r) 0 (Zero.toOfNat0.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) r) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.C_ne_zero HahnSeries.C_ne_zeroₓ'. -/
theorem C_ne_zero {r : R} (h : r ≠ 0) : (C r : HahnSeries Γ R) ≠ 0 :=
by
contrapose! h
@@ -1376,12 +977,6 @@ theorem C_ne_zero {r : R} (h : r ≠ 0) : (C r : HahnSeries Γ R) ≠ 0 :=
exact C_injective h
#align hahn_series.C_ne_zero HahnSeries.C_ne_zero
-/- warning: hahn_series.order_C -> HahnSeries.order_C is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R] {r : R}, Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2) r)) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : NonAssocSemiring.{u1} R] {r : R}, Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2)) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))))) (HahnSeries.C.{u2, u1} Γ R _inst_1 _inst_2) r)) (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.order_C HahnSeries.order_Cₓ'. -/
theorem order_C {r : R} : order (C r : HahnSeries Γ R) = 0 :=
by
by_cases h : r = 0
@@ -1395,9 +990,6 @@ section Semiring
variable [Semiring R]
-/- warning: hahn_series.C_mul_eq_smul -> HahnSeries.C_mul_eq_smul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.C_mul_eq_smul HahnSeries.C_mul_eq_smulₓ'. -/
theorem C_mul_eq_smul {r : R} {x : HahnSeries Γ R} : C r * x = r • x :=
single_zero_mul_eq_smul
#align hahn_series.C_mul_eq_smul HahnSeries.C_mul_eq_smul
@@ -1408,9 +1000,6 @@ section Domain
variable {Γ' : Type _} [OrderedCancelAddCommMonoid Γ']
-/- warning: hahn_series.emb_domain_mul -> HahnSeries.embDomain_mul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_mul HahnSeries.embDomain_mulₓ'. -/
theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
(hf : ∀ x y, f (x + y) = f x + f y) (x y : HahnSeries Γ R) :
embDomain f (x * y) = embDomain f x * embDomain f y :=
@@ -1448,17 +1037,11 @@ theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
refine' ⟨i + j, hf i j⟩
#align hahn_series.emb_domain_mul HahnSeries.embDomain_mul
-/- warning: hahn_series.emb_domain_one -> HahnSeries.embDomain_one is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_one HahnSeries.embDomain_oneₓ'. -/
theorem embDomain_one [NonAssocSemiring R] (f : Γ ↪o Γ') (hf : f 0 = 0) :
embDomain f (1 : HahnSeries Γ R) = (1 : HahnSeries Γ' R) :=
embDomain_single.trans <| hf.symm ▸ rfl
#align hahn_series.emb_domain_one HahnSeries.embDomain_one
-/- warning: hahn_series.emb_domain_ring_hom -> HahnSeries.embDomainRingHom is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_ring_hom HahnSeries.embDomainRingHomₓ'. -/
/-- Extending the domain of Hahn series is a ring homomorphism. -/
@[simps]
def embDomainRingHom [NonAssocSemiring R] (f : Γ →+ Γ') (hfi : Function.Injective f)
@@ -1471,9 +1054,6 @@ def embDomainRingHom [NonAssocSemiring R] (f : Γ →+ Γ') (hfi : Function.Inje
map_add' := embDomain_add _
#align hahn_series.emb_domain_ring_hom HahnSeries.embDomainRingHom
-/- warning: hahn_series.emb_domain_ring_hom_C -> HahnSeries.embDomainRingHom_C is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_ring_hom_C HahnSeries.embDomainRingHom_Cₓ'. -/
theorem embDomainRingHom_C [NonAssocSemiring R] {f : Γ →+ Γ'} {hfi : Function.Injective f}
{hf : ∀ g g' : Γ, f g ≤ f g' ↔ g ≤ g'} {r : R} : embDomainRingHom f hfi hf (C r) = C r :=
embDomain_single.trans (by simp)
@@ -1495,19 +1075,10 @@ instance : Algebra R (HahnSeries Γ A)
Function.comp_apply, algebraMap_smul, mul_single_zero_coeff]
rw [← Algebra.commutes, Algebra.smul_def]
-/- warning: hahn_series.C_eq_algebra_map -> HahnSeries.C_eq_algebraMap is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommSemiring.{u2} R], Eq.{max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (HahnSeries.C.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (algebraMap.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))) _inst_2 (HahnSeries.semiring.{u1, u2} Γ R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)) (HahnSeries.algebra.{u1, u2, u2} Γ R _inst_1 _inst_2 R (CommSemiring.toSemiring.{u2} R _inst_2) (Algebra.id.{u2} R _inst_2)))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : CommSemiring.{u1} R], Eq.{max (succ u2) (succ u1)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)))) (HahnSeries.C.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (algebraMap.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2))) _inst_2 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1} Γ R _inst_1 (CommSemiring.toSemiring.{u1} R _inst_2)) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1, u1} Γ R _inst_1 _inst_2 R (CommSemiring.toSemiring.{u1} R _inst_2) (Algebra.id.{u1} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.C_eq_algebra_map HahnSeries.C_eq_algebraMapₓ'. -/
theorem C_eq_algebraMap : C = algebraMap R (HahnSeries Γ R) :=
rfl
#align hahn_series.C_eq_algebra_map HahnSeries.C_eq_algebraMap
-/- warning: hahn_series.algebra_map_apply -> HahnSeries.algebraMap_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.algebra_map_apply HahnSeries.algebraMap_applyₓ'. -/
theorem algebraMap_apply {r : R} : algebraMap R (HahnSeries Γ A) r = C (algebraMap R A r) :=
rfl
#align hahn_series.algebra_map_apply HahnSeries.algebraMap_apply
@@ -1528,9 +1099,6 @@ section Domain
variable {Γ' : Type _} [OrderedCancelAddCommMonoid Γ']
-/- warning: hahn_series.emb_domain_alg_hom -> HahnSeries.embDomainAlgHom is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_alg_hom HahnSeries.embDomainAlgHomₓ'. -/
/-- Extending the domain of Hahn series is an algebra homomorphism. -/
@[simps]
def embDomainAlgHom (f : Γ →+ Γ') (hfi : Function.Injective f)
@@ -1548,12 +1116,6 @@ section Semiring
variable [Semiring R]
-/- warning: hahn_series.to_power_series -> HahnSeries.toPowerSeries is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R], RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1)))))
-but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R], RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.to_power_series HahnSeries.toPowerSeriesₓ'. -/
/-- The ring `hahn_series ℕ R` is isomorphic to `power_series R`. -/
@[simps]
def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
@@ -1575,17 +1137,11 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_power_series HahnSeries.toPowerSeries
-/- warning: hahn_series.coeff_to_power_series -> HahnSeries.coeff_toPowerSeries is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_power_series HahnSeries.coeff_toPowerSeriesₓ'. -/
theorem coeff_toPowerSeries {f : HahnSeries ℕ R} {n : ℕ} :
PowerSeries.coeff R n f.toPowerSeries = f.coeff n :=
PowerSeries.coeff_mk _ _
#align hahn_series.coeff_to_power_series HahnSeries.coeff_toPowerSeries
-/- warning: hahn_series.coeff_to_power_series_symm -> HahnSeries.coeff_toPowerSeries_symm is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_power_series_symm HahnSeries.coeff_toPowerSeries_symmₓ'. -/
theorem coeff_toPowerSeries_symm {f : PowerSeries R} {n : ℕ} :
(HahnSeries.toPowerSeries.symm f).coeff n = PowerSeries.coeff R n f :=
rfl
@@ -1593,12 +1149,6 @@ theorem coeff_toPowerSeries_symm {f : PowerSeries R} {n : ℕ} :
variable (Γ R) [StrictOrderedSemiring Γ]
-/- warning: hahn_series.of_power_series -> HahnSeries.ofPowerSeries is a dubious translation:
-lean 3 declaration is
- forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ], RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))
-but is expected to have type
- forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ], RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))
-Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series HahnSeries.ofPowerSeriesₓ'. -/
/-- Casts a power series as a Hahn series with coefficients from an `strict_ordered_semiring`. -/
def ofPowerSeries : PowerSeries R →+* HahnSeries Γ R :=
(HahnSeries.embDomainRingHom (Nat.castAddMonoidHom Γ) Nat.strictMono_cast.Injective fun _ _ =>
@@ -1608,19 +1158,10 @@ def ofPowerSeries : PowerSeries R →+* HahnSeries Γ R :=
variable {Γ} {R}
-/- warning: hahn_series.of_power_series_injective -> HahnSeries.ofPowerSeries_injective is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ], Function.Injective.{succ u2, max (succ u1) (succ u2)} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ], Function.Injective.{succ u2, max (succ u1) (succ u2)} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2))
-Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_injective HahnSeries.ofPowerSeries_injectiveₓ'. -/
theorem ofPowerSeries_injective : Function.Injective (ofPowerSeries Γ R) :=
embDomain_injective.comp toPowerSeries.symm.Injective
#align hahn_series.of_power_series_injective HahnSeries.ofPowerSeries_injective
-/- warning: hahn_series.of_power_series_apply -> HahnSeries.ofPowerSeries_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_apply HahnSeries.ofPowerSeries_applyₓ'. -/
@[simp]
theorem ofPowerSeries_apply (x : PowerSeries R) :
ofPowerSeries Γ R x =
@@ -1633,16 +1174,10 @@ theorem ofPowerSeries_apply (x : PowerSeries R) :
rfl
#align hahn_series.of_power_series_apply HahnSeries.ofPowerSeries_apply
-/- warning: hahn_series.of_power_series_apply_coeff -> HahnSeries.ofPowerSeries_apply_coeff is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_apply_coeff HahnSeries.ofPowerSeries_apply_coeffₓ'. -/
theorem ofPowerSeries_apply_coeff (x : PowerSeries R) (n : ℕ) :
(ofPowerSeries Γ R x).coeff n = PowerSeries.coeff R n x := by simp
#align hahn_series.of_power_series_apply_coeff HahnSeries.ofPowerSeries_apply_coeff
-/- warning: hahn_series.of_power_series_C -> HahnSeries.ofPowerSeries_C is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_C HahnSeries.ofPowerSeries_Cₓ'. -/
@[simp]
theorem ofPowerSeries_C (r : R) : ofPowerSeries Γ R (PowerSeries.C R r) = HahnSeries.C r :=
by
@@ -1658,9 +1193,6 @@ theorem ofPowerSeries_C (r : R) : ofPowerSeries Γ R (PowerSeries.C R r) = HahnS
simp (config := { contextual := true }) [Ne.symm hn]
#align hahn_series.of_power_series_C HahnSeries.ofPowerSeries_C
-/- warning: hahn_series.of_power_series_X -> HahnSeries.ofPowerSeries_X is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_Xₓ'. -/
@[simp]
theorem ofPowerSeries_X : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
by
@@ -1676,9 +1208,6 @@ theorem ofPowerSeries_X : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
simp (config := { contextual := true }) [Ne.symm hn]
#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_X
-/- warning: hahn_series.of_power_series_X_pow -> HahnSeries.ofPowerSeries_X_pow is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_powₓ'. -/
@[simp]
theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
ofPowerSeries Γ R (PowerSeries.X ^ n) = single (n : Γ) 1 :=
@@ -1689,12 +1218,6 @@ theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
rw [pow_succ, ih, of_power_series_X, mul_comm, single_mul_single, one_mul, Nat.cast_succ]
#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_pow
-/- warning: hahn_series.to_mv_power_series -> HahnSeries.toMvPowerSeries is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ], RingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1)))))
-but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ], RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.to_mv_power_series HahnSeries.toMvPowerSeriesₓ'. -/
-- Lemmas about converting hahn_series over fintype to and from mv_power_series
/-- The ring `hahn_series (σ →₀ ℕ) R` is isomorphic to `mv_power_series σ R` for a `fintype` `σ`.
We take the index set of the hahn series to be `finsupp` rather than `pi`,
@@ -1725,17 +1248,11 @@ def toMvPowerSeries {σ : Type _} [Fintype σ] : HahnSeries (σ →₀ ℕ) R
variable {σ : Type _} [Fintype σ]
-/- warning: hahn_series.coeff_to_mv_power_series -> HahnSeries.coeff_toMvPowerSeries is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_mv_power_series HahnSeries.coeff_toMvPowerSeriesₓ'. -/
theorem coeff_toMvPowerSeries {f : HahnSeries (σ →₀ ℕ) R} {n : σ →₀ ℕ} :
MvPowerSeries.coeff R n f.toMvPowerSeries = f.coeff n :=
rfl
#align hahn_series.coeff_to_mv_power_series HahnSeries.coeff_toMvPowerSeries
-/- warning: hahn_series.coeff_to_mv_power_series_symm -> HahnSeries.coeff_toMvPowerSeries_symm is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_mv_power_series_symm HahnSeries.coeff_toMvPowerSeries_symmₓ'. -/
theorem coeff_toMvPowerSeries_symm {f : MvPowerSeries σ R} {n : σ →₀ ℕ} :
(HahnSeries.toMvPowerSeries.symm f).coeff n = MvPowerSeries.coeff R n f :=
rfl
@@ -1747,12 +1264,6 @@ section Algebra
variable (R) [CommSemiring R] {A : Type _} [Semiring A] [Algebra R A]
-/- warning: hahn_series.to_power_series_alg -> HahnSeries.toPowerSeriesAlg is a dubious translation:
-lean 3 declaration is
- forall (R : Type.{u1}) [_inst_1 : CommSemiring.{u1} R] {A : Type.{u2}} [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2], AlgEquiv.{u1, u2, u2} R (HahnSeries.{0, u2} Nat A (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))))) (PowerSeries.{u2} A) _inst_1 (HahnSeries.semiring.{0, u2} Nat A (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_2) (PowerSeries.semiring.{u2} A _inst_2) (HahnSeries.algebra.{0, u1, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_1 A _inst_2 _inst_3) (PowerSeries.algebra.{u1, u2} R A _inst_2 _inst_1 _inst_3)
-but is expected to have type
- forall (R : Type.{u1}) [_inst_1 : CommSemiring.{u1} R] {A : Type.{u2}} [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2], AlgEquiv.{u1, u2, u2} R (HahnSeries.{0, u2} Nat A (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_2))) (PowerSeries.{u2} A) _inst_1 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{0, u2} Nat A (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_2) (PowerSeries.instSemiringPowerSeries.{u2} A _inst_2) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{0, u1, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_1 A _inst_2 _inst_3) (PowerSeries.instAlgebraPowerSeriesInstSemiringPowerSeries.{u1, u2} R A _inst_2 _inst_1 _inst_3)
-Case conversion may be inaccurate. Consider using '#align hahn_series.to_power_series_alg HahnSeries.toPowerSeriesAlgₓ'. -/
/-- The `R`-algebra `hahn_series ℕ A` is isomorphic to `power_series A`. -/
@[simps]
def toPowerSeriesAlg : HahnSeries ℕ A ≃ₐ[R] PowerSeries A :=
@@ -1770,12 +1281,6 @@ def toPowerSeriesAlg : HahnSeries ℕ A ≃ₐ[R] PowerSeries A :=
variable (Γ R) [StrictOrderedSemiring Γ]
-/- warning: hahn_series.of_power_series_alg -> HahnSeries.ofPowerSeriesAlg is a dubious translation:
-lean 3 declaration is
- forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : CommSemiring.{u2} R] {A : Type.{u3}} [_inst_2 : Semiring.{u3} A] [_inst_3 : Algebra.{u2, u3} R A _inst_1 _inst_2] [_inst_4 : StrictOrderedSemiring.{u1} Γ], AlgHom.{u2, u3, max u1 u3} R (PowerSeries.{u3} A) (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_2))))) _inst_1 (PowerSeries.semiring.{u3} A _inst_2) (HahnSeries.semiring.{u1, u3} Γ A (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) _inst_2) (PowerSeries.algebra.{u2, u3} R A _inst_2 _inst_1 _inst_3) (HahnSeries.algebra.{u1, u2, u3} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) _inst_1 A _inst_2 _inst_3)
-but is expected to have type
- forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : CommSemiring.{u2} R] {A : Type.{u3}} [_inst_2 : Semiring.{u3} A] [_inst_3 : Algebra.{u2, u3} R A _inst_1 _inst_2] [_inst_4 : StrictOrderedSemiring.{u1} Γ], AlgHom.{u2, u3, max u3 u1} R (PowerSeries.{u3} A) (HahnSeries.{u1, u3} Γ A (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u3} A (Semiring.toMonoidWithZero.{u3} A _inst_2))) _inst_1 (PowerSeries.instSemiringPowerSeries.{u3} A _inst_2) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u3} Γ A (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) _inst_2) (PowerSeries.instAlgebraPowerSeriesInstSemiringPowerSeries.{u2, u3} R A _inst_2 _inst_1 _inst_3) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2, u3} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) _inst_1 A _inst_2 _inst_3)
-Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_alg HahnSeries.ofPowerSeriesAlgₓ'. -/
/-- Casting a power series as a Hahn series with coefficients from an `strict_ordered_semiring`
is an algebra homomorphism. -/
@[simps]
@@ -1785,12 +1290,6 @@ def ofPowerSeriesAlg : PowerSeries A →ₐ[R] HahnSeries Γ A :=
(AlgEquiv.toAlgHom (toPowerSeriesAlg R).symm)
#align hahn_series.of_power_series_alg HahnSeries.ofPowerSeriesAlg
-/- warning: hahn_series.power_series_algebra -> HahnSeries.powerSeriesAlgebra is a dubious translation:
-lean 3 declaration is
- forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ] {S : Type.{u3}} [_inst_5 : CommSemiring.{u3} S] [_inst_6 : Algebra.{u3, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))], Algebra.{u3, max u1 u2} S (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_5 (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))
-but is expected to have type
- forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ] {S : Type.{u3}} [_inst_5 : CommSemiring.{u3} S] [_inst_6 : Algebra.{u3, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))], Algebra.{u3, max u2 u1} S (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) _inst_5 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))
-Case conversion may be inaccurate. Consider using '#align hahn_series.power_series_algebra HahnSeries.powerSeriesAlgebraₓ'. -/
instance powerSeriesAlgebra {S : Type _} [CommSemiring S] [Algebra S (PowerSeries R)] :
Algebra S (HahnSeries Γ R) :=
RingHom.toAlgebra <| (ofPowerSeries Γ R).comp (algebraMap S (PowerSeries R))
@@ -1798,26 +1297,17 @@ instance powerSeriesAlgebra {S : Type _} [CommSemiring S] [Algebra S (PowerSerie
variable {R} {S : Type _} [CommSemiring S] [Algebra S (PowerSeries R)]
-/- warning: hahn_series.algebra_map_apply' -> HahnSeries.algebraMap_apply' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.algebra_map_apply' HahnSeries.algebraMap_apply'ₓ'. -/
theorem algebraMap_apply' (x : S) :
algebraMap S (HahnSeries Γ R) x = ofPowerSeries Γ R (algebraMap S (PowerSeries R) x) :=
rfl
#align hahn_series.algebra_map_apply' HahnSeries.algebraMap_apply'
-/- warning: polynomial.algebra_map_hahn_series_apply -> Polynomial.algebraMap_hahnSeries_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align polynomial.algebra_map_hahn_series_apply Polynomial.algebraMap_hahnSeries_applyₓ'. -/
@[simp]
theorem Polynomial.algebraMap_hahnSeries_apply (f : R[X]) :
algebraMap R[X] (HahnSeries Γ R) f = ofPowerSeries Γ R f :=
rfl
#align polynomial.algebra_map_hahn_series_apply Polynomial.algebraMap_hahnSeries_apply
-/- warning: polynomial.algebra_map_hahn_series_injective -> Polynomial.algebraMap_hahnSeries_injective is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align polynomial.algebra_map_hahn_series_injective Polynomial.algebraMap_hahnSeries_injectiveₓ'. -/
theorem Polynomial.algebraMap_hahnSeries_injective :
Function.Injective (algebraMap R[X] (HahnSeries Γ R)) :=
ofPowerSeries_injective.comp (Polynomial.coe_injective R)
@@ -1829,12 +1319,6 @@ section Valuation
variable (Γ R) [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
-/- warning: hahn_series.add_val -> HahnSeries.addVal is a dubious translation:
-lean 3 declaration is
- forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)], AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))
-but is expected to have type
- forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)], AddValuation.{max u2 u1, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_2)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))
-Case conversion may be inaccurate. Consider using '#align hahn_series.add_val HahnSeries.addValₓ'. -/
/-- The additive valuation on `hahn_series Γ R`, returning the smallest index at which
a Hahn Series has a nonzero coefficient, or `⊤` for the 0 series. -/
def addVal : AddValuation (HahnSeries Γ R) (WithTop Γ) :=
@@ -1861,28 +1345,16 @@ def addVal : AddValuation (HahnSeries Γ R) (WithTop Γ) :=
variable {Γ} {R}
-/- warning: hahn_series.add_val_apply -> HahnSeries.addVal_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.add_val_apply HahnSeries.addVal_applyₓ'. -/
theorem addVal_apply {x : HahnSeries Γ R} :
addVal Γ R x = if x = (0 : HahnSeries Γ R) then (⊤ : WithTop Γ) else x.order :=
AddValuation.of_apply _
#align hahn_series.add_val_apply HahnSeries.addVal_apply
-/- warning: hahn_series.add_val_apply_of_ne -> HahnSeries.addVal_apply_of_ne is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.add_val_apply_of_ne HahnSeries.addVal_apply_of_neₓ'. -/
@[simp]
theorem addVal_apply_of_ne {x : HahnSeries Γ R} (hx : x ≠ 0) : addVal Γ R x = x.order :=
if_neg hx
#align hahn_series.add_val_apply_of_ne HahnSeries.addVal_apply_of_ne
-/- warning: hahn_series.add_val_le_of_coeff_ne_zero -> HahnSeries.addVal_le_of_coeff_ne_zero is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))} {g : Γ}, (Ne.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))) x g) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))))))) -> (LE.le.{u1} (WithTop.{u1} Γ) (Preorder.toHasLe.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2)) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 _inst_2 _inst_3) x) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) Γ (WithTop.{u1} Γ) (HasLiftT.mk.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (CoeTCₓ.coe.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (WithTop.hasCoeT.{u1} Γ))) g))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : Ring.{u1} R] [_inst_3 : IsDomain.{u1} R (Ring.toSemiring.{u1} R _inst_2)] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))} {g : Γ}, (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))) x g) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 _inst_2 _inst_3) x) (WithTop.some.{u2} Γ g))
-Case conversion may be inaccurate. Consider using '#align hahn_series.add_val_le_of_coeff_ne_zero HahnSeries.addVal_le_of_coeff_ne_zeroₓ'. -/
theorem addVal_le_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g ≠ 0) :
addVal Γ R x ≤ g :=
by
@@ -1892,9 +1364,6 @@ theorem addVal_le_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g
end Valuation
-/- warning: hahn_series.is_pwo_Union_support_powers -> HahnSeries.isPwo_iUnion_support_powers is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPwo_iUnion_support_powersₓ'. -/
theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
{x : HahnSeries Γ R} (hx : 0 < addVal Γ R x) : (⋃ n : ℕ, (x ^ n).support).IsPwo :=
by
@@ -1937,45 +1406,21 @@ variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
instance : CoeFun (SummableFamily Γ R α) fun _ => α → HahnSeries Γ R :=
⟨toFun⟩
-/- warning: hahn_series.summable_family.is_pwo_Union_support -> HahnSeries.SummableFamily.isPwo_iUnion_support is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α), Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1) (Set.iUnion.{u1, succ u3} Γ α (fun (a : α) => HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a)))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} (s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α), Set.IsPwo.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1) (Set.iUnion.{u3, succ u1} Γ α (fun (a : α) => HahnSeries.support.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s a)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.is_pwo_Union_support HahnSeries.SummableFamily.isPwo_iUnion_supportₓ'. -/
theorem isPwo_iUnion_support (s : SummableFamily Γ R α) : Set.IsPwo (⋃ a : α, (s a).support) :=
s.isPwo_iUnion_support'
#align hahn_series.summable_family.is_pwo_Union_support HahnSeries.SummableFamily.isPwo_iUnion_support
-/- warning: hahn_series.summable_family.finite_co_support -> HahnSeries.SummableFamily.finite_co_support is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (g : Γ), Set.Finite.{u3} α (Function.support.{u3, u2} α R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (fun (a : α) => HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a) g))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} (s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (g : Γ), Set.Finite.{u1} α (Function.support.{u1, u2} α R (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (fun (a : α) => HahnSeries.coeff.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s a) g))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.finite_co_support HahnSeries.SummableFamily.finite_co_supportₓ'. -/
theorem finite_co_support (s : SummableFamily Γ R α) (g : Γ) :
(Function.support fun a => (s a).coeff g).Finite :=
s.finite_co_support' g
#align hahn_series.summable_family.finite_co_support HahnSeries.SummableFamily.finite_co_support
-/- warning: hahn_series.summable_family.coe_injective -> HahnSeries.SummableFamily.coe_injective is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, Function.Injective.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (ᾰ : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, Function.Injective.{max (max (succ u3) (succ u2)) (succ u1), max (max (succ u1) (succ u2)) (succ u3)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α)
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_injective HahnSeries.SummableFamily.coe_injectiveₓ'. -/
theorem coe_injective : @Function.Injective (SummableFamily Γ R α) (α → HahnSeries Γ R) coeFn
| ⟨f1, hU1, hf1⟩, ⟨f2, hU2, hf2⟩, h => by
change f1 = f2 at h
subst h
#align hahn_series.summable_family.coe_injective HahnSeries.SummableFamily.coe_injective
-/- warning: hahn_series.summable_family.ext -> HahnSeries.SummableFamily.ext is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α}, (forall (a : α), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) t a)) -> (Eq.{max (succ u1) (succ u2) (succ u3)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s t)
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α}, (forall (a : α), Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s a) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α t a)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) s t)
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.ext HahnSeries.SummableFamily.extₓ'. -/
@[ext]
theorem ext {s t : SummableFamily Γ R α} (h : ∀ a : α, s a = t a) : s = t :=
coe_injective <| funext h
@@ -2004,44 +1449,20 @@ instance : Zero (SummableFamily Γ R α) :=
instance : Inhabited (SummableFamily Γ R α) :=
⟨0⟩
-/- warning: hahn_series.summable_family.coe_add -> HahnSeries.SummableFamily.coe_add is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α}, Eq.{succ (max u3 u1 u2)} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (coeFn.{succ (max u1 u2 u3), succ (max u3 u1 u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HAdd.hAdd.{max u1 u2 u3, max u1 u2 u3, max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (instHAdd.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasAdd.{u1, u2, u3} Γ R _inst_1 _inst_2 α)) s t)) (HAdd.hAdd.{max u3 u1 u2, max u3 u1 u2, max u3 u1 u2} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (instHAdd.{max u3 u1 u2} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (Pi.instAdd.{u3, max u1 u2} α (fun (ᾰ : α) => HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (fun (i : α) => HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) t))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α}, Eq.{max (max (succ u3) (succ u2)) (succ u1)} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α (HAdd.hAdd.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (instHAdd.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.instAddSummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α)) s t)) (HAdd.hAdd.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (instHAdd.{max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (Pi.instAdd.{u1, max u3 u2} α (fun (ᾰ : α) => HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (fun (i : α) => HahnSeries.instAddHahnSeriesToZero.{u3, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α t))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_add HahnSeries.SummableFamily.coe_addₓ'. -/
@[simp]
theorem coe_add {s t : SummableFamily Γ R α} : ⇑(s + t) = s + t :=
rfl
#align hahn_series.summable_family.coe_add HahnSeries.SummableFamily.coe_add
-/- warning: hahn_series.summable_family.add_apply -> HahnSeries.SummableFamily.add_apply is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HAdd.hAdd.{max u1 u2 u3, max u1 u2 u3, max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (instHAdd.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasAdd.{u1, u2, u3} Γ R _inst_1 _inst_2 α)) s t) a) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) t a))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {a : α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α (HAdd.hAdd.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (instHAdd.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.instAddSummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α)) s t) a) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (instHAdd.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instAddHahnSeriesToZero.{u3, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s a) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α t a))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.add_apply HahnSeries.SummableFamily.add_applyₓ'. -/
theorem add_apply {s t : SummableFamily Γ R α} {a : α} : (s + t) a = s a + t a :=
rfl
#align hahn_series.summable_family.add_apply HahnSeries.SummableFamily.add_apply
-/- warning: hahn_series.summable_family.coe_zero -> HahnSeries.SummableFamily.coe_zero is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, Eq.{max (succ u3) (succ u1) (succ u2)} ((fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (OfNat.ofNat.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (OfNat.mk.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (OfNat.ofNat.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (OfNat.mk.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α))))) (OfNat.ofNat.{max u3 u1 u2} ((fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α))) 0 (OfNat.mk.{max u3 u1 u2} ((fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α))) 0 (Zero.zero.{max u3 u1 u2} ((fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α))) (Pi.instZero.{u3, max u1 u2} α (fun (ᾰ : α) => HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (fun (i : α) => HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))))))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}}, Eq.{max (max (succ u3) (succ u2)) (succ u1)} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α (OfNat.ofNat.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) 0 (Zero.toOfNat0.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.instZeroSummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α)))) (OfNat.ofNat.{max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (Zero.toOfNat0.{max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (Pi.instZero.{u1, max u3 u2} α (fun (a._@.Mathlib.RingTheory.HahnSeries._hyg.12821 : α) => HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (fun (i : α) => HahnSeries.instZeroHahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_zero HahnSeries.SummableFamily.coe_zeroₓ'. -/
@[simp]
theorem coe_zero : ((0 : SummableFamily Γ R α) : α → HahnSeries Γ R) = 0 :=
rfl
#align hahn_series.summable_family.coe_zero HahnSeries.SummableFamily.coe_zero
-/- warning: hahn_series.summable_family.zero_apply -> HahnSeries.SummableFamily.zero_apply is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (OfNat.ofNat.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (OfNat.mk.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α)))) a) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {a : α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α (OfNat.ofNat.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) 0 (Zero.toOfNat0.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.instZeroSummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α))) a) (OfNat.ofNat.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) 0 (Zero.toOfNat0.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.zero_apply HahnSeries.SummableFamily.zero_applyₓ'. -/
theorem zero_apply {a : α} : (0 : SummableFamily Γ R α) a = 0 :=
rfl
#align hahn_series.summable_family.zero_apply HahnSeries.SummableFamily.zero_apply
@@ -2055,12 +1476,6 @@ instance : AddCommMonoid (SummableFamily Γ R α)
add_comm s t := by ext; apply add_comm
add_assoc r s t := by ext; apply add_assoc
-/- warning: hahn_series.summable_family.hsum -> HahnSeries.SummableFamily.hsum is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum HahnSeries.SummableFamily.hsumₓ'. -/
/-- The infinite sum of a `summable_family` of Hahn series. -/
def hsum (s : SummableFamily Γ R α) : HahnSeries Γ R
where
@@ -2074,23 +1489,11 @@ def hsum (s : SummableFamily Γ R α) : HahnSeries Γ R
rw [finsum_congr h, finsum_zero]
#align hahn_series.summable_family.hsum HahnSeries.SummableFamily.hsum
-/- warning: hahn_series.summable_family.hsum_coeff -> HahnSeries.SummableFamily.hsum_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {g : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α s) g) (finsum.{u2, succ u3} R α _inst_2 (fun (i : α) => HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s i) g))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {g : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R _inst_1 _inst_2 α s) g) (finsum.{u2, succ u1} R α _inst_2 (fun (i : α) => HahnSeries.coeff.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s i) g))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_coeff HahnSeries.SummableFamily.hsum_coeffₓ'. -/
@[simp]
theorem hsum_coeff {s : SummableFamily Γ R α} {g : Γ} : s.hsum.coeff g = ∑ᶠ i, (s i).coeff g :=
rfl
#align hahn_series.summable_family.hsum_coeff HahnSeries.SummableFamily.hsum_coeff
-/- warning: hahn_series.summable_family.support_hsum_subset -> HahnSeries.SummableFamily.support_hsum_subset is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α}, HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α s)) (Set.iUnion.{u1, succ u3} Γ α (fun (a : α) => HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a)))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α}, HasSubset.Subset.{u3} (Set.{u3} Γ) (Set.instHasSubsetSet.{u3} Γ) (HahnSeries.support.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R _inst_1 _inst_2 α s)) (Set.iUnion.{u3, succ u1} Γ α (fun (a : α) => HahnSeries.support.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s a)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.support_hsum_subset HahnSeries.SummableFamily.support_hsum_subsetₓ'. -/
theorem support_hsum_subset {s : SummableFamily Γ R α} : s.hsum.support ⊆ ⋃ a : α, (s a).support :=
fun g hg =>
by
@@ -2100,12 +1503,6 @@ theorem support_hsum_subset {s : SummableFamily Γ R α} : s.hsum.support ⊆
exact ⟨a, h2⟩
#align hahn_series.summable_family.support_hsum_subset HahnSeries.SummableFamily.support_hsum_subset
-/- warning: hahn_series.summable_family.hsum_add -> HahnSeries.SummableFamily.hsum_add is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α (HAdd.hAdd.{max u1 u2 u3, max u1 u2 u3, max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (instHAdd.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasAdd.{u1, u2, u3} Γ R _inst_1 _inst_2 α)) s t)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α s) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α t))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R _inst_1 _inst_2 α (HAdd.hAdd.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (instHAdd.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.instAddSummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α)) s t)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (instHAdd.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instAddHahnSeriesToZero.{u3, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R _inst_1 _inst_2 α s) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R _inst_1 _inst_2 α t))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_add HahnSeries.SummableFamily.hsum_addₓ'. -/
@[simp]
theorem hsum_add {s t : SummableFamily Γ R α} : (s + t).hsum = s.hsum + t.hsum :=
by
@@ -2132,44 +1529,20 @@ instance : AddCommGroup (SummableFamily Γ R α) :=
exact s.finite_co_support g }
add_left_neg := fun a => by ext; apply add_left_neg }
-/- warning: hahn_series.summable_family.coe_neg -> HahnSeries.SummableFamily.coe_neg is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α}, Eq.{succ (max u3 u1 u2)} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (coeFn.{succ (max u1 u2 u3), succ (max u3 u1 u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (Neg.neg.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toHasNeg.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.addCommGroup.{u1, u2, u3} Γ R _inst_1 _inst_2 α)))) s)) (Neg.neg.{max u3 u1 u2} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (Pi.instNeg.{u3, max u1 u2} α (fun (ᾰ : α) => HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (fun (i : α) => SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddCommGroup.toAddGroup.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.addCommGroup.{u1, u2} Γ R _inst_1 _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) s))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α}, Eq.{max (max (succ u3) (succ u2)) (succ u1)} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α (Neg.neg.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (NegZeroClass.toNeg.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegZeroMonoid.toNegZeroClass.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubtractionMonoid.toSubNegZeroMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubtractionCommMonoid.toSubtractionMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toDivisionAddCommMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u3, u2, u1} Γ R _inst_1 _inst_2 α)))))) s)) (Neg.neg.{max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (Pi.instNeg.{u1, max u3 u2} α (fun (ᾰ : α) => HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (fun (i : α) => NegZeroClass.toNeg.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubNegZeroMonoid.toNegZeroClass.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubtractionMonoid.toSubNegZeroMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubtractionCommMonoid.toSubtractionMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (AddCommGroup.toDivisionAddCommMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.instAddCommGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoidToDivisionAddCommMonoid.{u3, u2} Γ R _inst_1 _inst_2))))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α s))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_neg HahnSeries.SummableFamily.coe_negₓ'. -/
@[simp]
theorem coe_neg : ⇑(-s) = -s :=
rfl
#align hahn_series.summable_family.coe_neg HahnSeries.SummableFamily.coe_neg
-/- warning: hahn_series.summable_family.neg_apply -> HahnSeries.SummableFamily.neg_apply is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (Neg.neg.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toHasNeg.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.addCommGroup.{u1, u2, u3} Γ R _inst_1 _inst_2 α)))) s) a) (Neg.neg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 (AddCommGroup.toAddGroup.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) s a))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {a : α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α (Neg.neg.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (NegZeroClass.toNeg.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegZeroMonoid.toNegZeroClass.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubtractionMonoid.toSubNegZeroMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubtractionCommMonoid.toSubtractionMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toDivisionAddCommMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u3, u2, u1} Γ R _inst_1 _inst_2 α)))))) s) a) (Neg.neg.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (NegZeroClass.toNeg.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubNegZeroMonoid.toNegZeroClass.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubtractionMonoid.toSubNegZeroMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubtractionCommMonoid.toSubtractionMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (AddCommGroup.toDivisionAddCommMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.instAddCommGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoidToDivisionAddCommMonoid.{u3, u2} Γ R _inst_1 _inst_2)))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α s a))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.neg_apply HahnSeries.SummableFamily.neg_applyₓ'. -/
theorem neg_apply : (-s) a = -s a :=
rfl
#align hahn_series.summable_family.neg_apply HahnSeries.SummableFamily.neg_apply
-/- warning: hahn_series.summable_family.coe_sub -> HahnSeries.SummableFamily.coe_sub is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α}, Eq.{succ (max u3 u1 u2)} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (coeFn.{succ (max u1 u2 u3), succ (max u3 u1 u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HSub.hSub.{max u1 u2 u3, max u1 u2 u3, max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (instHSub.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toHasSub.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.addCommGroup.{u1, u2, u3} Γ R _inst_1 _inst_2 α))))) s t)) (HSub.hSub.{max u3 u1 u2, max u3 u1 u2, max u3 u1 u2} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (instHSub.{max u3 u1 u2} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (Pi.instSub.{u3, max u1 u2} α (fun (ᾰ : α) => HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (fun (i : α) => SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddCommGroup.toAddGroup.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.addCommGroup.{u1, u2} Γ R _inst_1 _inst_2)))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) s) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) t))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α}, Eq.{max (max (succ u3) (succ u2)) (succ u1)} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α (HSub.hSub.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (instHSub.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toSub.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u3, u2, u1} Γ R _inst_1 _inst_2 α))))) s t)) (HSub.hSub.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (instHSub.{max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (Pi.instSub.{u1, max u3 u2} α (fun (ᾰ : α) => HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (fun (i : α) => SubNegMonoid.toSub.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (AddGroup.toSubNegMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u3, u2} Γ R _inst_1 (AddCommGroup.toAddGroup.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α s) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α t))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_sub HahnSeries.SummableFamily.coe_subₓ'. -/
@[simp]
theorem coe_sub : ⇑(s - t) = s - t :=
rfl
#align hahn_series.summable_family.coe_sub HahnSeries.SummableFamily.coe_sub
-/- warning: hahn_series.summable_family.sub_apply -> HahnSeries.SummableFamily.sub_apply is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HSub.hSub.{max u1 u2 u3, max u1 u2 u3, max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (instHSub.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toHasSub.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.addCommGroup.{u1, u2, u3} Γ R _inst_1 _inst_2 α))))) s t) a) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (instHSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 (AddCommGroup.toAddGroup.{u2} R _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) s a) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) t a))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {a : α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α (HSub.hSub.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (instHSub.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toSub.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u3, u2, u1} Γ R _inst_1 _inst_2 α))))) s t) a) (HSub.hSub.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (instHSub.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubNegMonoid.toSub.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (AddGroup.toSubNegMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u3, u2} Γ R _inst_1 (AddCommGroup.toAddGroup.{u2} R _inst_2))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α s a) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α t a))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.sub_apply HahnSeries.SummableFamily.sub_applyₓ'. -/
theorem sub_apply : (s - t) a = s a - t a :=
rfl
#align hahn_series.summable_family.sub_apply HahnSeries.SummableFamily.sub_apply
@@ -2203,12 +1576,6 @@ instance : SMul (HahnSeries Γ R) (SummableFamily Γ R α)
is_pwo_support, Prod.exists]
exact ⟨i, j, mem_coe.2 (mem_add_antidiagonal.2 ⟨hi, Set.mem_iUnion.2 ⟨a, hj⟩, rfl⟩), hj⟩ }
-/- warning: hahn_series.summable_family.smul_apply -> HahnSeries.SummableFamily.smul_apply is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u3}} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α} {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) => α -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (SMul.smul.{max u1 u2, max u1 u2 u3} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.hasSmul.{u1, u2, u3} Γ R _inst_1 _inst_2 α) x s) a) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) x (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) => α -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) s a))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u3} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u1}} {x : HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α} {a : α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α (HSMul.hSMul.{max u3 u2, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (instHSMul.{max u3 u2, max (max u3 u2) u1} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.instSMulHahnSeriesToPartialOrderToZeroToMonoidWithZeroSummableFamilyToAddCommMonoidToNonUnitalNonAssocSemiringToNonAssocSemiring.{u3, u2, u1} Γ R _inst_1 _inst_2 α)) x s) a) (HMul.hMul.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (instHMul.{max u3 u2} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u3, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) x (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α s a))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.smul_apply HahnSeries.SummableFamily.smul_applyₓ'. -/
@[simp]
theorem smul_apply {x : HahnSeries Γ R} {s : SummableFamily Γ R α} {a : α} : (x • s) a = x * s a :=
rfl
@@ -2224,12 +1591,6 @@ instance : Module (HahnSeries Γ R) (SummableFamily Γ R α)
smul_add x s t := ext fun a => mul_add _ _ _
mul_smul x y s := ext fun a => mul_assoc _ _ _
-/- warning: hahn_series.summable_family.hsum_smul -> HahnSeries.SummableFamily.hsum_smul is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u3}} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α (SMul.smul.{max u1 u2, max u1 u2 u3} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.hasSmul.{u1, u2, u3} Γ R _inst_1 _inst_2 α) x s)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) x (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α s))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u3} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u1}} {x : HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α (HSMul.hSMul.{max u3 u2, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (instHSMul.{max u3 u2, max (max u3 u2) u1} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.instSMulHahnSeriesToPartialOrderToZeroToMonoidWithZeroSummableFamilyToAddCommMonoidToNonUnitalNonAssocSemiringToNonAssocSemiring.{u3, u2, u1} Γ R _inst_1 _inst_2 α)) x s)) (HMul.hMul.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (instHMul.{max u3 u2} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u3, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) x (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α s))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_smul HahnSeries.SummableFamily.hsum_smulₓ'. -/
@[simp]
theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s).hsum = x * s.hsum :=
by
@@ -2264,12 +1625,6 @@ theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s)
MulZeroClass.mul_zero]
#align hahn_series.summable_family.hsum_smul HahnSeries.SummableFamily.hsum_smul
-/- warning: hahn_series.summable_family.lsum -> HahnSeries.SummableFamily.lsum is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u3}}, LinearMap.{max u1 u2, max u1 u2, max u1 u2 u3, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.semiring.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.semiring.{u1, u2} Γ R _inst_1 _inst_2) (RingHom.id.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.semiring.{u1, u2} Γ R _inst_1 _inst_2))) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.SummableFamily.addCommMonoid.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.addCommMonoid.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.SummableFamily.module.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (Semiring.toModule.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.semiring.{u1, u2} Γ R _inst_1 _inst_2))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u3}}, LinearMap.{max u1 u2, max u1 u2, max (max u3 u2) u1, max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R _inst_1 _inst_2) (RingHom.id.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.SummableFamily.instAddCommMonoidSummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.SummableFamily.instModuleHahnSeriesToPartialOrderToZeroToMonoidWithZeroSummableFamilyToAddCommMonoidToNonUnitalNonAssocSemiringToNonAssocSemiringInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstAddCommMonoidSummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (Semiring.toModule.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R _inst_1 _inst_2))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.lsum HahnSeries.SummableFamily.lsumₓ'. -/
/-- The summation of a `summable_family` as a `linear_map`. -/
@[simps]
def lsum : SummableFamily Γ R α →ₗ[HahnSeries Γ R] HahnSeries Γ R
@@ -2279,9 +1634,6 @@ def lsum : SummableFamily Γ R α →ₗ[HahnSeries Γ R] HahnSeries Γ R
map_smul' _ _ := hsum_smul
#align hahn_series.summable_family.lsum HahnSeries.SummableFamily.lsum
-/- warning: hahn_series.summable_family.hsum_sub -> HahnSeries.SummableFamily.hsum_sub is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_sub HahnSeries.SummableFamily.hsum_subₓ'. -/
@[simp]
theorem hsum_sub {R : Type _} [Ring R] {s t : SummableFamily Γ R α} :
(s - t).hsum = s.hsum - t.hsum := by
@@ -2294,12 +1646,6 @@ section OfFinsupp
variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
-/- warning: hahn_series.summable_family.of_finsupp -> HahnSeries.SummableFamily.ofFinsupp is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, (Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) -> (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α)
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, (Finsupp.{u3, max u2 u1} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) -> (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α)
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.of_finsupp HahnSeries.SummableFamily.ofFinsuppₓ'. -/
/-- A family with only finitely many nonzero elements is summable. -/
def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α
where
@@ -2322,23 +1668,11 @@ def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α
simp [ha]
#align hahn_series.summable_family.of_finsupp HahnSeries.SummableFamily.ofFinsupp
-/- warning: hahn_series.summable_family.coe_of_finsupp -> HahnSeries.SummableFamily.coe_ofFinsupp is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {f : Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))}, Eq.{max (succ u3) (succ u1) (succ u2)} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.ofFinsupp.{u1, u2, u3} Γ R _inst_1 _inst_2 α f)) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (fun (_x : Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (Finsupp.coeFun.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) f)
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {f : Finsupp.{u3, max u2 u1} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))}, Eq.{max (max (succ u1) (succ u2)) (succ u3)} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α (HahnSeries.SummableFamily.ofFinsupp.{u1, u2, u3} Γ R _inst_1 _inst_2 α f)) (FunLike.coe.{max (succ u3) (succ (max u1 u2)), succ u3, succ (max u1 u2)} (Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : α) => HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) _x) (Finsupp.funLike.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) f)
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_of_finsupp HahnSeries.SummableFamily.coe_ofFinsuppₓ'. -/
@[simp]
theorem coe_ofFinsupp {f : α →₀ HahnSeries Γ R} : ⇑(SummableFamily.ofFinsupp f) = f :=
rfl
#align hahn_series.summable_family.coe_of_finsupp HahnSeries.SummableFamily.coe_ofFinsupp
-/- warning: hahn_series.summable_family.hsum_of_finsupp -> HahnSeries.SummableFamily.hsum_ofFinsupp is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {f : Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α (HahnSeries.SummableFamily.ofFinsupp.{u1, u2, u3} Γ R _inst_1 _inst_2 α f)) (Finsupp.sum.{u3, max u1 u2, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.addCommMonoid.{u1, u2} Γ R _inst_1 _inst_2) f (fun (a : α) => id.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {f : Finsupp.{u3, max u2 u1} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α (HahnSeries.SummableFamily.ofFinsupp.{u1, u2, u3} Γ R _inst_1 _inst_2 α f)) (Finsupp.sum.{u3, max u1 u2, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2} Γ R _inst_1 _inst_2) f (fun (a : α) => id.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_of_finsupp HahnSeries.SummableFamily.hsum_ofFinsuppₓ'. -/
@[simp]
theorem hsum_ofFinsupp {f : α →₀ HahnSeries Γ R} : (ofFinsupp f).hsum = f.Sum fun a => id :=
by
@@ -2385,23 +1719,11 @@ def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R
variable (s : SummableFamily Γ R α) (f : α ↪ β) {a : α} {b : β}
-/- warning: hahn_series.summable_family.emb_domain_apply -> HahnSeries.SummableFamily.embDomain_apply is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {β : Type.{u4}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u3, succ u4} α β) {b : β}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u4), max (succ u4) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) => β -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (HahnSeries.SummableFamily.embDomain.{u1, u2, u3, u4} Γ R _inst_1 _inst_2 α β s f) b) (dite.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (Membership.Mem.{u4, u4} β (Set.{u4} β) (Set.hasMem.{u4} β) b (Set.range.{u4, succ u3} β α (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f))) (Classical.propDecidable (Membership.Mem.{u4, u4} β (Set.{u4} β) (Set.hasMem.{u4} β) b (Set.range.{u4, succ u3} β α (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f)))) (fun (h : Membership.Mem.{u4, u4} β (Set.{u4} β) (Set.hasMem.{u4} β) b (Set.range.{u4, succ u3} β α (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f))) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s (Classical.choose.{succ u3} α (fun (y : α) => Eq.{succ u4} β (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f y) b) h)) (fun (h : Not (Membership.Mem.{u4, u4} β (Set.{u4} β) (Set.hasMem.{u4} β) b (Set.range.{u4, succ u3} β α (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f)))) => OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))))))
-but is expected to have type
- forall {Γ : Type.{u4}} {R : Type.{u3}} [_inst_1 : PartialOrder.{u4} Γ] [_inst_2 : AddCommMonoid.{u3} R] {α : Type.{u1}} {β : Type.{u2}} (s : HahnSeries.SummableFamily.{u4, u3, u1} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u1, succ u2} α β) {b : β}, Eq.{max (succ u4) (succ u3)} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u4, u3, u2} Γ R _inst_1 _inst_2 β (HahnSeries.SummableFamily.embDomain.{u4, u3, u1, u2} Γ R _inst_1 _inst_2 α β s f) b) (dite.{max (succ u4) (succ u3)} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) (Membership.mem.{u2, u2} β (Set.{u2} β) (Set.instMembershipSet.{u2} β) b (Set.range.{u2, succ u1} β α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f))) (Classical.propDecidable (Membership.mem.{u2, u2} β (Set.{u2} β) (Set.instMembershipSet.{u2} β) b (Set.range.{u2, succ u1} β α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f)))) (fun (h : Membership.mem.{u2, u2} β (Set.{u2} β) (Set.instMembershipSet.{u2} β) b (Set.range.{u2, succ u1} β α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f))) => HahnSeries.SummableFamily.toFun.{u4, u3, u1} Γ R _inst_1 _inst_2 α s (Classical.choose.{succ u1} α (fun (y : α) => Eq.{succ u2} β (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f y) b) h)) (fun (h : Not (Membership.mem.{u2, u2} β (Set.{u2} β) (Set.instMembershipSet.{u2} β) b (Set.range.{u2, succ u1} β α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f)))) => OfNat.ofNat.{max u4 u3} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) 0 (Zero.toOfNat0.{max u4 u3} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.emb_domain_apply HahnSeries.SummableFamily.embDomain_applyₓ'. -/
theorem embDomain_apply :
s.embDomain f b = if h : b ∈ Set.range f then s (Classical.choose h) else 0 :=
rfl
#align hahn_series.summable_family.emb_domain_apply HahnSeries.SummableFamily.embDomain_apply
-/- warning: hahn_series.summable_family.emb_domain_image -> HahnSeries.SummableFamily.embDomain_image is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {β : Type.{u4}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u3, succ u4} α β) {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u4), max (succ u4) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) => β -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (HahnSeries.SummableFamily.embDomain.{u1, u2, u3, u4} Γ R _inst_1 _inst_2 α β s f) (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f a)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a)
-but is expected to have type
- forall {Γ : Type.{u4}} {R : Type.{u3}} [_inst_1 : PartialOrder.{u4} Γ] [_inst_2 : AddCommMonoid.{u3} R] {α : Type.{u1}} {β : Type.{u2}} (s : HahnSeries.SummableFamily.{u4, u3, u1} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u1, succ u2} α β) {a : α}, Eq.{max (succ u4) (succ u3)} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u4, u3, u2} Γ R _inst_1 _inst_2 β (HahnSeries.SummableFamily.embDomain.{u4, u3, u1, u2} Γ R _inst_1 _inst_2 α β s f) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f a)) (HahnSeries.SummableFamily.toFun.{u4, u3, u1} Γ R _inst_1 _inst_2 α s a)
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.emb_domain_image HahnSeries.SummableFamily.embDomain_imageₓ'. -/
@[simp]
theorem embDomain_image : s.embDomain f (f a) = s a :=
by
@@ -2409,23 +1731,11 @@ theorem embDomain_image : s.embDomain f (f a) = s a :=
exact congr rfl (f.injective (Classical.choose_spec (Set.mem_range_self a)))
#align hahn_series.summable_family.emb_domain_image HahnSeries.SummableFamily.embDomain_image
-/- warning: hahn_series.summable_family.emb_domain_notin_range -> HahnSeries.SummableFamily.embDomain_notin_range is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {β : Type.{u4}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u3, succ u4} α β) {b : β}, (Not (Membership.Mem.{u4, u4} β (Set.{u4} β) (Set.hasMem.{u4} β) b (Set.range.{u4, succ u3} β α (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f)))) -> (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u4), max (succ u4) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) => β -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (HahnSeries.SummableFamily.embDomain.{u1, u2, u3, u4} Γ R _inst_1 _inst_2 α β s f) b) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddCommMonoid.{u1} R] {α : Type.{u3}} {β : Type.{u4}} (s : HahnSeries.SummableFamily.{u2, u1, u3} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u3, succ u4} α β) {b : β}, (Not (Membership.mem.{u4, u4} β (Set.{u4} β) (Set.instMembershipSet.{u4} β) b (Set.range.{u4, succ u3} β α (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Function.Embedding.{succ u3, succ u4} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u3) (succ u4), succ u3, succ u4} (Function.Embedding.{succ u3, succ u4} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u3, succ u4} α β)) f)))) -> (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u2, u1, u4} Γ R _inst_1 _inst_2 β (HahnSeries.SummableFamily.embDomain.{u2, u1, u3, u4} Γ R _inst_1 _inst_2 α β s f) b) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R _inst_2))) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R _inst_2))))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.emb_domain_notin_range HahnSeries.SummableFamily.embDomain_notin_rangeₓ'. -/
@[simp]
theorem embDomain_notin_range (h : b ∉ Set.range f) : s.embDomain f b = 0 := by
rw [emb_domain_apply, dif_neg h]
#align hahn_series.summable_family.emb_domain_notin_range HahnSeries.SummableFamily.embDomain_notin_range
-/- warning: hahn_series.summable_family.hsum_emb_domain -> HahnSeries.SummableFamily.hsum_embDomain is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {β : Type.{u4}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u3, succ u4} α β), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.hsum.{u1, u2, u4} Γ R _inst_1 _inst_2 β (HahnSeries.SummableFamily.embDomain.{u1, u2, u3, u4} Γ R _inst_1 _inst_2 α β s f)) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α s)
-but is expected to have type
- forall {Γ : Type.{u4}} {R : Type.{u3}} [_inst_1 : PartialOrder.{u4} Γ] [_inst_2 : AddCommMonoid.{u3} R] {α : Type.{u1}} {β : Type.{u2}} (s : HahnSeries.SummableFamily.{u4, u3, u1} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u1, succ u2} α β), Eq.{max (succ u4) (succ u3)} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u4, u3, u2} Γ R _inst_1 _inst_2 β (HahnSeries.SummableFamily.embDomain.{u4, u3, u1, u2} Γ R _inst_1 _inst_2 α β s f)) (HahnSeries.SummableFamily.hsum.{u4, u3, u1} Γ R _inst_1 _inst_2 α s)
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_emb_domain HahnSeries.SummableFamily.hsum_embDomainₓ'. -/
@[simp]
theorem hsum_embDomain : (s.embDomain f).hsum = s.hsum :=
by
@@ -2440,12 +1750,6 @@ section powers
variable [LinearOrderedCancelAddCommMonoid Γ] [CommRing R] [IsDomain R]
-/- warning: hahn_series.summable_family.powers -> HahnSeries.SummableFamily.powers is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] (x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))), (LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 (CommRing.toRing.{u2} R _inst_2) _inst_3) x)) -> (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat)
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_2))] (x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (CommMonoidWithZero.toZero.{u2} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} R (IsDomain.toCancelCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_2) _inst_3)))), (LT.lt.{u1} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => WithTop.{u1} Γ) x) (Preorder.toLT.{u1} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => WithTop.{u1} Γ) x) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => WithTop.{u1} Γ) x) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => WithTop.{u1} Γ) x) (WithTop.zero.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)))))))) (FunLike.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2), succ u1} (AddValuation.{max u2 u1, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) (fun (_x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => WithTop.{u1} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) (WithTop.{u1} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 (CommRing.toRing.{u2} R _inst_2) _inst_3) x)) -> (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat)
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.powers HahnSeries.SummableFamily.powersₓ'. -/
/-- The powers of an element of positive valuation form a summable family. -/
def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R ℕ
where
@@ -2480,17 +1784,11 @@ def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R
variable {x : HahnSeries Γ R} (hx : 0 < addVal Γ R x)
-/- warning: hahn_series.summable_family.coe_powers -> HahnSeries.SummableFamily.coe_powers is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_powers HahnSeries.SummableFamily.coe_powersₓ'. -/
@[simp]
theorem coe_powers : ⇑(powers x hx) = pow x :=
rfl
#align hahn_series.summable_family.coe_powers HahnSeries.SummableFamily.coe_powers
-/- warning: hahn_series.summable_family.emb_domain_succ_smul_powers -> HahnSeries.SummableFamily.embDomain_succ_smul_powers is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.emb_domain_succ_smul_powers HahnSeries.SummableFamily.embDomain_succ_smul_powersₓ'. -/
theorem embDomain_succ_smul_powers :
(x • powers x hx).embDomain ⟨Nat.succ, Nat.succ_injective⟩ =
powers x hx - ofFinsupp (Finsupp.single 0 1) :=
@@ -2506,9 +1804,6 @@ theorem embDomain_succ_smul_powers :
rw [Finsupp.single_eq_of_ne n.succ_ne_zero.symm, sub_zero]
#align hahn_series.summable_family.emb_domain_succ_smul_powers HahnSeries.SummableFamily.embDomain_succ_smul_powers
-/- warning: hahn_series.summable_family.one_sub_self_mul_hsum_powers -> HahnSeries.SummableFamily.one_sub_self_mul_hsum_powers is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.one_sub_self_mul_hsum_powers HahnSeries.SummableFamily.one_sub_self_mul_hsum_powersₓ'. -/
theorem one_sub_self_mul_hsum_powers : (1 - x) * (powers x hx).hsum = 1 :=
by
rw [← hsum_smul, sub_smul, one_smul, hsum_sub, ←
@@ -2528,9 +1823,6 @@ section IsDomain
variable [CommRing R] [IsDomain R]
-/- warning: hahn_series.unit_aux -> HahnSeries.unit_aux is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align hahn_series.unit_aux HahnSeries.unit_auxₓ'. -/
theorem unit_aux (x : HahnSeries Γ R) {r : R} (hr : r * x.coeff x.order = 1) :
0 < addVal Γ R (1 - C r * single (-x.order) 1 * x) :=
by
@@ -2553,12 +1845,6 @@ theorem unit_aux (x : HahnSeries Γ R) {r : R} (hr : r * x.coeff x.order = 1) :
← add_neg_self x.order, single_mul_coeff_add, one_mul, hr, sub_self]
#align hahn_series.unit_aux HahnSeries.unit_aux
-/- warning: hahn_series.is_unit_iff -> HahnSeries.isUnit_iff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] {x : HahnSeries.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))}, Iff (IsUnit.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (Ring.toMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (CommRing.toRing.{u2} R _inst_2))) x) (IsUnit.{u2} R (Ring.toMonoid.{u2} R (CommRing.toRing.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) x (HahnSeries.order.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (SubNegMonoid.toAddMonoid.{u1} Γ (AddGroup.toSubNegMonoid.{u1} Γ (AddCommGroup.toAddGroup.{u1} Γ (OrderedAddCommGroup.toAddCommGroup.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))))) x)))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedAddCommGroup.{u2} Γ] [_inst_2 : CommRing.{u1} R] [_inst_3 : IsDomain.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))] {x : HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))}, Iff (IsUnit.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (MonoidWithZero.toMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (Semiring.toMonoidWithZero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) x) (IsUnit.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (HahnSeries.coeff.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) x (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x)))
-Case conversion may be inaccurate. Consider using '#align hahn_series.is_unit_iff HahnSeries.isUnit_iffₓ'. -/
theorem isUnit_iff {x : HahnSeries Γ R} : IsUnit x ↔ IsUnit (x.coeff x.order) :=
by
constructor
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -505,9 +505,7 @@ but is expected to have type
forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f (OfNat.ofNat.{max u3 u1} (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u3 u1} (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u3, u1} Γ R _inst_1 _inst_2)))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) 0 (Zero.toOfNat0.{max u1 u2} (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ' R _inst_3 _inst_2)))
Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_zero HahnSeries.embDomain_zeroₓ'. -/
@[simp]
-theorem embDomain_zero {f : Γ ↪o Γ'} : embDomain f (0 : HahnSeries Γ R) = 0 :=
- by
- ext
+theorem embDomain_zero {f : Γ ↪o Γ'} : embDomain f (0 : HahnSeries Γ R) = 0 := by ext;
simp [emb_domain_notin_image_support]
#align hahn_series.emb_domain_zero HahnSeries.embDomain_zero
@@ -565,15 +563,9 @@ instance : Add (HahnSeries Γ R)
instance : AddMonoid (HahnSeries Γ R) where
zero := 0
add := (· + ·)
- add_assoc x y z := by
- ext
- apply add_assoc
- zero_add x := by
- ext
- apply zero_add
- add_zero x := by
- ext
- apply add_zero
+ add_assoc x y z := by ext; apply add_assoc
+ zero_add x := by ext; apply zero_add
+ add_zero x := by ext; apply add_zero
/- warning: hahn_series.add_coeff' -> HahnSeries.add_coeff' is a dubious translation:
lean 3 declaration is
@@ -634,10 +626,7 @@ Case conversion may be inaccurate. Consider using '#align hahn_series.single.add
/-- `single` as an additive monoid/group homomorphism -/
@[simps]
def single.addMonoidHom (a : Γ) : R →+ HahnSeries Γ R :=
- { single a with
- map_add' := fun x y => by
- ext b
- by_cases h : b = a <;> simp [h] }
+ { single a with map_add' := fun x y => by ext b; by_cases h : b = a <;> simp [h] }
#align hahn_series.single.add_monoid_hom HahnSeries.single.addMonoidHom
/- warning: hahn_series.coeff.add_monoid_hom -> HahnSeries.coeff.addMonoidHom is a dubious translation:
@@ -680,10 +669,7 @@ end Domain
end AddMonoid
instance [AddCommMonoid R] : AddCommMonoid (HahnSeries Γ R) :=
- { HahnSeries.addMonoid with
- add_comm := fun x y => by
- ext
- apply add_comm }
+ { HahnSeries.addMonoid with add_comm := fun x y => by ext; apply add_comm }
section AddGroup
@@ -697,9 +683,7 @@ instance : AddGroup (HahnSeries Γ R) :=
isPwo_support' := by
rw [Function.support_neg]
exact x.is_pwo_support }
- add_left_neg := fun x => by
- ext
- apply add_left_neg }
+ add_left_neg := fun x => by ext; apply add_left_neg }
/- warning: hahn_series.neg_coeff' -> HahnSeries.neg_coeff' is a dubious translation:
lean 3 declaration is
@@ -729,10 +713,7 @@ but is expected to have type
forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))}, Eq.{succ u2} (Set.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (Neg.neg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (NegZeroClass.toNeg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegZeroMonoid.toNegZeroClass.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubtractionMonoid.toSubNegZeroMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubtractionMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2))))) x)) (HahnSeries.support.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x)
Case conversion may be inaccurate. Consider using '#align hahn_series.support_neg HahnSeries.support_negₓ'. -/
@[simp]
-theorem support_neg {x : HahnSeries Γ R} : (-x).support = x.support :=
- by
- ext
- simp
+theorem support_neg {x : HahnSeries Γ R} : (-x).support = x.support := by ext; simp
#align hahn_series.support_neg HahnSeries.support_neg
/- warning: hahn_series.sub_coeff' -> HahnSeries.sub_coeff' is a dubious translation:
@@ -742,9 +723,7 @@ but is expected to have type
forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))} {y : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))}, Eq.{max (succ u2) (succ u1)} (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (instHSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegMonoid.toSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2)))) x y)) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} (Γ -> R) (Γ -> R) (Γ -> R) (instHSub.{max u2 u1} (Γ -> R) (Pi.instSub.{u2, u1} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => SubNegMonoid.toSub.{u1} R (AddGroup.toSubNegMonoid.{u1} R _inst_2)))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) y))
Case conversion may be inaccurate. Consider using '#align hahn_series.sub_coeff' HahnSeries.sub_coeff'ₓ'. -/
@[simp]
-theorem sub_coeff' {x y : HahnSeries Γ R} : (x - y).coeff = x.coeff - y.coeff :=
- by
- ext
+theorem sub_coeff' {x y : HahnSeries Γ R} : (x - y).coeff = x.coeff - y.coeff := by ext;
simp [sub_eq_add_neg]
#align hahn_series.sub_coeff' HahnSeries.sub_coeff'
@@ -767,8 +746,7 @@ Case conversion may be inaccurate. Consider using '#align hahn_series.order_neg
@[simp]
theorem order_neg [Zero Γ] {f : HahnSeries Γ R} : (-f).order = f.order :=
by
- by_cases hf : f = 0
- · simp only [hf, neg_zero]
+ by_cases hf : f = 0; · simp only [hf, neg_zero]
simp only [order, support_neg, neg_eq_zero]
#align hahn_series.order_neg HahnSeries.order_neg
@@ -802,30 +780,18 @@ theorem smul_coeff {r : R} {x : HahnSeries Γ V} {a : Γ} : (r • x).coeff a =
instance : DistribMulAction R (HahnSeries Γ V)
where
smul := (· • ·)
- one_smul _ := by
- ext
- simp
- smul_zero _ := by
- ext
- simp
- smul_add _ _ _ := by
- ext
- simp [smul_add]
- mul_smul _ _ _ := by
- ext
- simp [mul_smul]
+ one_smul _ := by ext; simp
+ smul_zero _ := by ext; simp
+ smul_add _ _ _ := by ext; simp [smul_add]
+ mul_smul _ _ _ := by ext; simp [mul_smul]
variable {S : Type _} [Monoid S] [DistribMulAction S V]
instance [SMul R S] [IsScalarTower R S V] : IsScalarTower R S (HahnSeries Γ V) :=
- ⟨fun r s a => by
- ext
- simp⟩
+ ⟨fun r s a => by ext; simp⟩
instance [SMulCommClass R S V] : SMulCommClass R S (HahnSeries Γ V) :=
- ⟨fun r s a => by
- ext
- simp [smul_comm]⟩
+ ⟨fun r s a => by ext; simp [smul_comm]⟩
end DistribMulAction
@@ -836,12 +802,8 @@ variable [PartialOrder Γ] [Semiring R] {V : Type _} [AddCommMonoid V] [Module R
instance : Module R (HahnSeries Γ V) :=
{
HahnSeries.distribMulAction with
- zero_smul := fun _ => by
- ext
- simp
- add_smul := fun _ _ _ => by
- ext
- simp [add_smul] }
+ zero_smul := fun _ => by ext; simp
+ add_smul := fun _ _ _ => by ext; simp [add_smul] }
/- warning: hahn_series.single.linear_map -> HahnSeries.single.linearMap is a dubious translation:
lean 3 declaration is
@@ -852,10 +814,7 @@ Case conversion may be inaccurate. Consider using '#align hahn_series.single.lin
/-- `single` as a linear map -/
@[simps]
def single.linearMap (a : Γ) : R →ₗ[R] HahnSeries Γ R :=
- { single.addMonoidHom a with
- map_smul' := fun r s => by
- ext b
- by_cases h : b = a <;> simp [h] }
+ { single.addMonoidHom a with map_smul' := fun r s => by ext b; by_cases h : b = a <;> simp [h] }
#align hahn_series.single.linear_map HahnSeries.single.linearMap
/- warning: hahn_series.coeff.linear_map -> HahnSeries.coeff.linearMap is a dubious translation:
@@ -1151,9 +1110,7 @@ theorem single_zero_mul_coeff [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSer
Case conversion may be inaccurate. Consider using '#align hahn_series.single_zero_mul_eq_smul HahnSeries.single_zero_mul_eq_smulₓ'. -/
@[simp]
theorem single_zero_mul_eq_smul [Semiring R] {r : R} {x : HahnSeries Γ R} :
- single 0 r * x = r • x := by
- ext
- exact single_zero_mul_coeff
+ single 0 r * x = r • x := by ext; exact single_zero_mul_coeff
#align hahn_series.single_zero_mul_eq_smul HahnSeries.single_zero_mul_eq_smul
/- warning: hahn_series.support_mul_subset_add_support -> HahnSeries.support_mul_subset_add_support is a dubious translation:
@@ -1219,12 +1176,8 @@ instance [NonUnitalNonAssocSemiring R] : NonUnitalNonAssocSemiring (HahnSeries
zero := 0
add := (· + ·)
mul := (· * ·)
- zero_mul := fun _ => by
- ext
- simp
- mul_zero := fun _ => by
- ext
- simp }
+ zero_mul := fun _ => by ext; simp
+ mul_zero := fun _ => by ext; simp }
instance [NonUnitalSemiring R] : NonUnitalSemiring (HahnSeries Γ R) :=
{ HahnSeries.nonUnitalNonAssocSemiring with
@@ -1240,12 +1193,8 @@ instance [NonAssocSemiring R] : NonAssocSemiring (HahnSeries Γ R) :=
one := 1
add := (· + ·)
mul := (· * ·)
- one_mul := fun x => by
- ext
- exact single_zero_mul_coeff.trans (one_mul _)
- mul_one := fun x => by
- ext
- exact mul_single_zero_coeff.trans (mul_one _) }
+ one_mul := fun x => by ext; exact single_zero_mul_coeff.trans (one_mul _)
+ mul_one := fun x => by ext; exact mul_single_zero_coeff.trans (mul_one _) }
instance [Semiring R] : Semiring (HahnSeries Γ R) :=
{ HahnSeries.nonAssocSemiring,
@@ -1291,8 +1240,7 @@ instance {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocSemiring R
where eq_zero_or_eq_zero_of_mul_eq_zero x y xy :=
by
by_cases hx : x = 0
- · left
- exact hx
+ · left; exact hx
right
contrapose! xy
rw [HahnSeries.ext_iff, Function.funext_iff, not_forall]
@@ -1375,9 +1323,7 @@ def C : R →+* HahnSeries Γ R where
toFun := single 0
map_zero' := single_eq_zero
map_one' := rfl
- map_add' x y := by
- ext a
- by_cases h : a = 0 <;> simp [h]
+ map_add' x y := by ext a; by_cases h : a = 0 <;> simp [h]
map_mul' x y := by rw [single_mul_single, zero_add]
#align hahn_series.C HahnSeries.C
@@ -1542,11 +1488,9 @@ variable [CommSemiring R] {A : Type _} [Semiring A] [Algebra R A]
instance : Algebra R (HahnSeries Γ A)
where
toRingHom := C.comp (algebraMap R A)
- smul_def' r x := by
- ext
- simp
+ smul_def' r x := by ext; simp
commutes' r x := by
- ext
+ ext;
simp only [smul_coeff, single_zero_mul_eq_smul, RingHom.coe_comp, RingHom.toFun_eq_coe, C_apply,
Function.comp_apply, algebraMap_smul, mul_single_zero_coeff]
rw [← Algebra.commutes, Algebra.smul_def]
@@ -1616,15 +1560,9 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
where
toFun f := PowerSeries.mk f.coeff
invFun f := ⟨fun n => PowerSeries.coeff R n f, (Nat.lt_wfRel.IsWf _).IsPwo⟩
- left_inv f := by
- ext
- simp
- right_inv f := by
- ext
- simp
- map_add' f g := by
- ext
- simp
+ left_inv f := by ext; simp
+ right_inv f := by ext; simp
+ map_add' f g := by ext; simp
map_mul' f g := by
ext n
simp only [PowerSeries.coeff_mul, PowerSeries.coeff_mk, mul_coeff, is_pwo_support]
@@ -1747,8 +1685,7 @@ theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
by
rw [RingHom.map_pow]
induction' n with n ih
- · simp
- rfl
+ · simp; rfl
rw [pow_succ, ih, of_power_series_X, mul_comm, single_mul_single, one_mul, Nat.cast_succ]
#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_pow
@@ -1769,15 +1706,9 @@ def toMvPowerSeries {σ : Type _} [Fintype σ] : HahnSeries (σ →₀ ℕ) R
where
toFun f := f.coeff
invFun f := ⟨(f : (σ →₀ ℕ) → R), Finsupp.isPwo _⟩
- left_inv f := by
- ext
- simp
- right_inv f := by
- ext
- simp
- map_add' f g := by
- ext
- simp
+ left_inv f := by ext; simp
+ right_inv f := by ext; simp
+ map_add' f g := by ext; simp
map_mul' f g := by
ext n
simp only [MvPowerSeries.coeff_mul]
@@ -2119,18 +2050,10 @@ instance : AddCommMonoid (SummableFamily Γ R α)
where
add := (· + ·)
zero := 0
- zero_add s := by
- ext
- apply zero_add
- add_zero s := by
- ext
- apply add_zero
- add_comm s t := by
- ext
- apply add_comm
- add_assoc r s t := by
- ext
- apply add_assoc
+ zero_add s := by ext; apply zero_add
+ add_zero s := by ext; apply add_zero
+ add_comm s t := by ext; apply add_comm
+ add_assoc r s t := by ext; apply add_assoc
/- warning: hahn_series.summable_family.hsum -> HahnSeries.SummableFamily.hsum is a dubious translation:
lean 3 declaration is
@@ -2202,16 +2125,12 @@ instance : AddCommGroup (SummableFamily Γ R α) :=
SummableFamily.addCommMonoid with
neg := fun s =>
{ toFun := fun a => -s a
- isPwo_iUnion_support' := by
- simp_rw [support_neg]
- exact s.is_pwo_Union_support'
+ isPwo_iUnion_support' := by simp_rw [support_neg]; exact s.is_pwo_Union_support'
finite_co_support' := fun g =>
by
simp only [neg_coeff', Pi.neg_apply, Ne.def, neg_eq_zero]
exact s.finite_co_support g }
- add_left_neg := fun a => by
- ext
- apply add_left_neg }
+ add_left_neg := fun a => by ext; apply add_left_neg }
/- warning: hahn_series.summable_family.coe_neg -> HahnSeries.SummableFamily.coe_neg is a dubious translation:
lean 3 declaration is
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -611,10 +611,7 @@ theorem support_add_subset {x y : HahnSeries Γ R} : support (x + y) ⊆ support
#align hahn_series.support_add_subset HahnSeries.support_add_subset
/- warning: hahn_series.min_order_le_order_add -> HahnSeries.min_order_le_order_add is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_2 : AddMonoid.{u1} R] {Γ : Type.{u2}} [_inst_3 : LinearOrderedCancelAddCommMonoid.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))} {y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))}, (Ne.{succ (max u2 u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (instHAdd.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.hasAdd.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) _inst_2)) x y) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) 0 (OfNat.mk.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) 0 (Zero.zero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.hasZero.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))))))) -> (LE.le.{u2} Γ (Preorder.toHasLe.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)))) (LinearOrder.min.{u2} Γ (LinearOrderedAddCommMonoid.toLinearOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_3)) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))))) y)) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))))) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (instHAdd.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.hasAdd.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) _inst_2)) x y)))
-but is expected to have type
- forall {R : Type.{u1}} [_inst_2 : AddMonoid.{u1} R] {Γ : Type.{u2}} [_inst_3 : LinearOrderedCancelAddCommMonoid.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)} {y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)}, (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) _inst_2)) x y) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) 0 (Zero.toOfNat0.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2))))) -> (LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)))) (Min.min.{u2} Γ (LinearOrderedCancelAddCommMonoid.toMin.{u2} Γ _inst_3) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))) y)) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) _inst_2)) x y)))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.min_order_le_order_add HahnSeries.min_order_le_order_addₓ'. -/
theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y : HahnSeries Γ R}
(hxy : x + y ≠ 0) : min x.order y.order ≤ (x + y).order :=
@@ -1150,10 +1147,7 @@ theorem single_zero_mul_coeff [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSer
#align hahn_series.single_zero_mul_coeff HahnSeries.single_zero_mul_coeff
/- warning: hahn_series.single_zero_mul_eq_smul -> HahnSeries.single_zero_mul_eq_smul is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))}, Eq.{succ (max u1 u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))) r) x) (SMul.smul.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasSmul.{u1, u2, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Module.toDistribMulAction.{u2, u2} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2))) r x)
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HMul.hMul.{max u2 u1, max u1 u2, max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) r) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)))) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (ZeroHom.zeroHomClass.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) r) x) (HSMul.hSMul.{u2, max u1 u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (instHSMul.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instSMulHahnSeriesToZero.{u1, u2, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Module.toDistribMulAction.{u2, u2} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)))) r x)
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.single_zero_mul_eq_smul HahnSeries.single_zero_mul_eq_smulₓ'. -/
@[simp]
theorem single_zero_mul_eq_smul [Semiring R] {r : R} {x : HahnSeries Γ R} :
@@ -1180,10 +1174,7 @@ theorem support_mul_subset_add_support [NonUnitalNonAssocSemiring R] {x y : Hahn
#align hahn_series.support_mul_subset_add_support HahnSeries.support_mul_subset_add_support
/- warning: hahn_series.mul_coeff_order_add_order -> HahnSeries.mul_coeff_order_add_order is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : NonUnitalNonAssocSemiring.{u1} R] (x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))), Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (instHMul.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.hasMul.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3)) x y) (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toHasAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) y))) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R _inst_3))) (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) x (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) x)) (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) y (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) y)))
-but is expected to have type
- forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : NonUnitalNonAssocSemiring.{u1} R] (x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))), Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (instHMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3)) x y) (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) y))) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (NonUnitalNonAssocSemiring.toMul.{u1} R _inst_3)) (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) x (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) x)) (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) y (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) y)))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.mul_coeff_order_add_order HahnSeries.mul_coeff_order_add_orderₓ'. -/
theorem mul_coeff_order_add_order {Γ} [LinearOrderedCancelAddCommMonoid Γ]
[NonUnitalNonAssocSemiring R] (x y : HahnSeries Γ R) :
@@ -1221,7 +1212,6 @@ private theorem mul_assoc' [NonUnitalSemiring R] (x y z : HahnSeries Γ R) :
H2 ((mul_assoc _ _ _).symm.trans Con), ⟨rfl, rfl⟩, rfl, rfl⟩
· rintro ⟨⟨i, j⟩, ⟨k, l⟩⟩ H1 H2
simp [mul_assoc]
-#align hahn_series.mul_assoc' hahn_series.mul_assoc'
instance [NonUnitalNonAssocSemiring R] : NonUnitalNonAssocSemiring (HahnSeries Γ R) :=
{ HahnSeries.addCommMonoid,
@@ -1315,10 +1305,7 @@ instance {Γ} [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R] :
NoZeroDivisors.to_isDomain _
/- warning: hahn_series.order_mul -> HahnSeries.order_mul is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : NonUnitalNonAssocSemiring.{u1} R] [_inst_4 : NoZeroDivisors.{u1} R (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R _inst_3)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))} {y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))}, (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (OfNat.mk.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (Zero.zero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.hasZero.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))))))) -> (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) y (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (OfNat.mk.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (Zero.zero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.hasZero.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))))))) -> (Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (instHMul.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.hasMul.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3)) x y)) (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toHasAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) y)))
-but is expected to have type
- forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : NonUnitalNonAssocSemiring.{u1} R] [_inst_4 : NoZeroDivisors.{u1} R (NonUnitalNonAssocSemiring.toMul.{u1} R _inst_3) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))} {y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))}, (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (Zero.toOfNat0.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)))))) -> (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) y (OfNat.ofNat.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (Zero.toOfNat0.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)))))) -> (Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (instHMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3)) x y)) (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) y)))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.order_mul HahnSeries.order_mulₓ'. -/
@[simp]
theorem order_mul {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocSemiring R]
@@ -1354,10 +1341,7 @@ section NonUnitalNonAssocSemiring
variable [NonUnitalNonAssocSemiring R]
/- warning: hahn_series.single_mul_single -> HahnSeries.single_mul_single is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {a : Γ} {b : Γ} {r : R} {s : R}, Eq.{succ (max u1 u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) a) r) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) b) s)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toHasAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) a b)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) r s))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u1} R] {a : Γ} {b : Γ} {r : R} {s : R}, Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) r) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) s) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R _inst_1 _inst_2)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))))) (HahnSeries.single.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) a) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))))) (HahnSeries.single.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) b) s)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))))) (HahnSeries.single.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) a b)) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (NonUnitalNonAssocSemiring.toMul.{u1} R _inst_2)) r s))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.single_mul_single HahnSeries.single_mul_singleₓ'. -/
@[simp]
theorem single_mul_single {a b : Γ} {r s : R} : single a r * single b s = single (a + b) (r * s) :=
@@ -1466,10 +1450,7 @@ section Semiring
variable [Semiring R]
/- warning: hahn_series.C_mul_eq_smul -> HahnSeries.C_mul_eq_smul is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))}, Eq.{succ (max u1 u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (Semiring.toNonAssocSemiring.{u2} R _inst_2) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (Semiring.toNonAssocSemiring.{u2} R _inst_2) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R _inst_2))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (Semiring.toNonAssocSemiring.{u2} R _inst_2) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.C.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R _inst_2)) r) x) (SMul.smul.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasSmul.{u1, u2, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Module.toDistribMulAction.{u2, u2} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2))) r x)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : Semiring.{u1} R] {r : R} {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))}, Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2)) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2)))))) (HahnSeries.C.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2)) r) x) (HSMul.hSMul.{u1, max u2 u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (instHSMul.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.instSMulHahnSeriesToZero.{u2, u1, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Module.toDistribMulAction.{u1, u1} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2))) (Semiring.toModule.{u1} R _inst_2)))) r x)
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.C_mul_eq_smul HahnSeries.C_mul_eq_smulₓ'. -/
theorem C_mul_eq_smul {r : R} {x : HahnSeries Γ R} : C r * x = r • x :=
single_zero_mul_eq_smul
@@ -1482,10 +1463,7 @@ section Domain
variable {Γ' : Type _} [OrderedCancelAddCommMonoid Γ']
/- warning: hahn_series.emb_domain_mul -> HahnSeries.embDomain_mul is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {Γ' : Type.{u3}} [_inst_2 : OrderedCancelAddCommMonoid.{u3} Γ'] [_inst_3 : NonUnitalNonAssocSemiring.{u2} R] (f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))), (forall (x : Γ) (y : Γ), Eq.{succ u3} Γ' (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) f (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toHasAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) x y)) (HAdd.hAdd.{u3, u3, u3} Γ' Γ' Γ' (instHAdd.{u3} Γ' (AddZeroClass.toHasAdd.{u3} Γ' (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2))))))) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) f x) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) f y))) -> (forall (x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))), Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.embDomain.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) f (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_3)) x y)) (HMul.hMul.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (instHMul.{max u3 u2} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.hasMul.{u3, u2} Γ' R _inst_2 _inst_3)) (HahnSeries.embDomain.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) f x) (HahnSeries.embDomain.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) f y)))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u3}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] {Γ' : Type.{u1}} [_inst_2 : OrderedCancelAddCommMonoid.{u1} Γ'] [_inst_3 : NonUnitalNonAssocSemiring.{u3} R] (f : OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))), (forall (x : Γ) (y : Γ), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) x y)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u2, u1} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) x y)) (HAdd.hAdd.{u1, u1, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') y) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (instHAdd.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (AddZeroClass.toAdd.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (AddMonoid.toAddZeroClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (AddRightCancelMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (AddCancelMonoid.toAddRightCancelMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (AddCancelCommMonoid.toAddCancelMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) _inst_2))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u2, u1} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f x) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u2, u1} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f y))) -> (forall (x : HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (y : HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))), Eq.{max (succ u3) (succ u1)} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.embDomain.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) f (HMul.hMul.{max u2 u3, max u2 u3, max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (instHMul.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u3} Γ R _inst_1 _inst_3)) x y)) (HMul.hMul.{max u3 u1, max u3 u1, max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (instHMul.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u3} Γ' R _inst_2 _inst_3)) (HahnSeries.embDomain.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) f x) (HahnSeries.embDomain.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) f y)))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_mul HahnSeries.embDomain_mulₓ'. -/
theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
(hf : ∀ x y, f (x + y) = f x + f y) (x y : HahnSeries Γ R) :
@@ -1525,10 +1503,7 @@ theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
#align hahn_series.emb_domain_mul HahnSeries.embDomain_mul
/- warning: hahn_series.emb_domain_one -> HahnSeries.embDomain_one is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {Γ' : Type.{u3}} [_inst_2 : OrderedCancelAddCommMonoid.{u3} Γ'] [_inst_3 : NonAssocSemiring.{u2} R] (f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))), (Eq.{succ u3} Γ' (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) f (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))) (OfNat.ofNat.{u3} Γ' 0 (OfNat.mk.{u3} Γ' 0 (Zero.zero.{u3} Γ' (AddZeroClass.toHasZero.{u3} Γ' (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))))))) -> (Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.embDomain.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) f (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.hasOne.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))) (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R _inst_3)))))))) (OfNat.ofNat.{max u3 u2} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) 1 (OfNat.mk.{max u3 u2} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) 1 (One.one.{max u3 u2} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.hasOne.{u3, u2} Γ' R _inst_2 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))) (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R _inst_3))))))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u3}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] {Γ' : Type.{u1}} [_inst_2 : OrderedCancelAddCommMonoid.{u1} Γ'] [_inst_3 : NonAssocSemiring.{u3} R] (f : OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))), (Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u2, u1} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (AddRightCancelMonoid.toZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (AddCancelMonoid.toAddRightCancelMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (AddCancelCommMonoid.toAddCancelMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) _inst_2))))))) -> (Eq.{max (succ u3) (succ u1)} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.embDomain.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) f (OfNat.ofNat.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) 1 (One.toOfNat1.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u3} Γ R _inst_1 (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3)) (NonAssocSemiring.toOne.{u3} R _inst_3))))) (OfNat.ofNat.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) 1 (One.toOfNat1.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u1, u3} Γ' R _inst_2 (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3)) (NonAssocSemiring.toOne.{u3} R _inst_3)))))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_one HahnSeries.embDomain_oneₓ'. -/
theorem embDomain_one [NonAssocSemiring R] (f : Γ ↪o Γ') (hf : f 0 = 0) :
embDomain f (1 : HahnSeries Γ R) = (1 : HahnSeries Γ' R) :=
@@ -1536,10 +1511,7 @@ theorem embDomain_one [NonAssocSemiring R] (f : Γ ↪o Γ') (hf : f 0 = 0) :
#align hahn_series.emb_domain_one HahnSeries.embDomain_one
/- warning: hahn_series.emb_domain_ring_hom -> HahnSeries.embDomainRingHom is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {Γ' : Type.{u3}} [_inst_2 : OrderedCancelAddCommMonoid.{u3} Γ'] [_inst_3 : NonAssocSemiring.{u2} R] (f : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))), (Function.Injective.{succ u1, succ u3} Γ Γ' (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f)) -> (forall (g : Γ) (g' : Γ), Iff (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f g) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f g')) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) g g')) -> (RingHom.{max u1 u2, max u3 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3) (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {Γ' : Type.{u3}} [_inst_2 : OrderedCancelAddCommMonoid.{u3} Γ'] [_inst_3 : NonAssocSemiring.{u2} R] (f : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))), (Function.Injective.{succ u1, succ u3} Γ Γ' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u3} Γ' (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))))) f)) -> (forall (g : Γ) (g' : Γ), Iff (LE.le.{u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (Preorder.toLE.{u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (PartialOrder.toPreorder.{u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) _inst_2))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u3} Γ' (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))))) f g) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u3} Γ' (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))))) f g')) (LE.le.{u1} Γ (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) g g')) -> (RingHom.{max u2 u1, max u2 u3} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_3))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ' R _inst_2 _inst_3))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_ring_hom HahnSeries.embDomainRingHomₓ'. -/
/-- Extending the domain of Hahn series is a ring homomorphism. -/
@[simps]
@@ -1554,10 +1526,7 @@ def embDomainRingHom [NonAssocSemiring R] (f : Γ →+ Γ') (hfi : Function.Inje
#align hahn_series.emb_domain_ring_hom HahnSeries.embDomainRingHom
/- warning: hahn_series.emb_domain_ring_hom_C -> HahnSeries.embDomainRingHom_C is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {Γ' : Type.{u3}} [_inst_2 : OrderedCancelAddCommMonoid.{u3} Γ'] [_inst_3 : NonAssocSemiring.{u2} R] {f : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))} {hfi : Function.Injective.{succ u1, succ u3} Γ Γ' (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f)} {hf : forall (g : Γ) (g' : Γ), Iff (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f g) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f g')) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) g g')} {r : R}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (coeFn.{max (succ (max u1 u2)) (succ (max u3 u2)), max (succ (max u1 u2)) (succ (max u3 u2))} (RingHom.{max u1 u2, max u3 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3) (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) (fun (_x : RingHom.{max u1 u2, max u3 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3) (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) -> (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))))) (RingHom.hasCoeToFun.{max u1 u2, max u3 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3) (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) (HahnSeries.embDomainRingHom.{u1, u2, u3} Γ R _inst_1 Γ' _inst_2 _inst_3 f hfi hf) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_3) r)) (coeFn.{max (succ u2) (succ (max u3 u2)), max (succ u2) (succ (max u3 u2))} (RingHom.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) (fun (_x : RingHom.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) => R -> (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))))) (RingHom.hasCoeToFun.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) (HahnSeries.C.{u3, u2} Γ' R _inst_2 _inst_3) r)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u3}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] {Γ' : Type.{u1}} [_inst_2 : OrderedCancelAddCommMonoid.{u1} Γ'] [_inst_3 : NonAssocSemiring.{u3} R] {f : AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))} {hfi : Function.Injective.{succ u2, succ u1} Γ Γ' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1)))))) (AddZeroClass.toAdd.{u1} Γ' (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))))) f)} {hf : forall (g : Γ) (g' : Γ), Iff (LE.le.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (Preorder.toLE.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (PartialOrder.toPreorder.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (OrderedCancelAddCommMonoid.toPartialOrder.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) _inst_2))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1)))))) (AddZeroClass.toAdd.{u1} Γ' (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))))) f g) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1)))))) (AddZeroClass.toAdd.{u1} Γ' (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))))) f g')) (LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) g g')} {r : R}, Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) => HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) a) (MulHomClass.toFunLike.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toMul.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (RingHom.instRingHomClassRingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3))))) (HahnSeries.C.{u2, u3} Γ R _inst_1 _inst_3) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), max (succ u1) (succ u3)} (RingHom.{max u3 u2, max u3 u1} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (fun (_x : HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) => HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _x) (MulHomClass.toFunLike.{max (max u2 u1) u3, max u2 u3, max u1 u3} (RingHom.{max u3 u2, max u3 u1} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3))) (NonUnitalNonAssocSemiring.toMul.{max u1 u3} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max (max u2 u1) u3, max u2 u3, max u1 u3} (RingHom.{max u3 u2, max u3 u1} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max (max u2 u1) u3, max u2 u3, max u1 u3} (RingHom.{max u3 u2, max u3 u1} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3) (RingHom.instRingHomClassRingHom.{max u2 u3, max u1 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3))))) (HahnSeries.embDomainRingHom.{u2, u3, u1} Γ R _inst_1 Γ' _inst_2 _inst_3 f hfi hf) (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _x) (MulHomClass.toFunLike.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toMul.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (RingHom.instRingHomClassRingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3))))) (HahnSeries.C.{u2, u3} Γ R _inst_1 _inst_3) r)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, max (succ u3) (succ u1)} (RingHom.{u3, max u3 u1} R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _x) (MulHomClass.toFunLike.{max u3 u1, u3, max u3 u1} (RingHom.{u3, max u3 u1} R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toMul.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, max u3 u1} (RingHom.{u3, max u3 u1} R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, max u3 u1} (RingHom.{u3, max u3 u1} R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3) (RingHom.instRingHomClassRingHom.{u3, max u3 u1} R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3))))) (HahnSeries.C.{u1, u3} Γ' R _inst_2 _inst_3) r)
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_ring_hom_C HahnSeries.embDomainRingHom_Cₓ'. -/
theorem embDomainRingHom_C [NonAssocSemiring R] {f : Γ →+ Γ'} {hfi : Function.Injective f}
{hf : ∀ g g' : Γ, f g ≤ f g' ↔ g ≤ g'} {r : R} : embDomainRingHom f hfi hf (C r) = C r :=
@@ -1593,10 +1562,7 @@ theorem C_eq_algebraMap : C = algebraMap R (HahnSeries Γ R) :=
#align hahn_series.C_eq_algebra_map HahnSeries.C_eq_algebraMap
/- warning: hahn_series.algebra_map_apply -> HahnSeries.algebraMap_apply is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommSemiring.{u2} R] {A : Type.{u3}} [_inst_3 : Semiring.{u3} A] [_inst_4 : Algebra.{u2, u3} R A _inst_2 _inst_3] {r : R}, Eq.{max (succ u1) (succ u3)} (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (coeFn.{max (succ u2) (succ (max u1 u3)), max (succ u2) (succ (max u1 u3))} (RingHom.{u2, max u1 u3} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u3} (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (HahnSeries.semiring.{u1, u3} Γ A _inst_1 _inst_3))) (fun (_x : RingHom.{u2, max u1 u3} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u3} (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (HahnSeries.semiring.{u1, u3} Γ A _inst_1 _inst_3))) => R -> (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3)))))) (RingHom.hasCoeToFun.{u2, max u1 u3} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u3} (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (HahnSeries.semiring.{u1, u3} Γ A _inst_1 _inst_3))) (algebraMap.{u2, max u1 u3} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) _inst_2 (HahnSeries.semiring.{u1, u3} Γ A _inst_1 _inst_3) (HahnSeries.algebra.{u1, u2, u3} Γ R _inst_1 _inst_2 A _inst_3 _inst_4)) r) (coeFn.{max (succ u3) (succ (max u1 u3)), max (succ u3) (succ (max u1 u3))} (RingHom.{u3, max u1 u3} A (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u3} A _inst_3) (HahnSeries.nonAssocSemiring.{u1, u3} Γ A _inst_1 (Semiring.toNonAssocSemiring.{u3} A _inst_3))) (fun (_x : RingHom.{u3, max u1 u3} A (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u3} A _inst_3) (HahnSeries.nonAssocSemiring.{u1, u3} Γ A _inst_1 (Semiring.toNonAssocSemiring.{u3} A _inst_3))) => A -> (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3)))))) (RingHom.hasCoeToFun.{u3, max u1 u3} A (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u3} A _inst_3) (HahnSeries.nonAssocSemiring.{u1, u3} Γ A _inst_1 (Semiring.toNonAssocSemiring.{u3} A _inst_3))) (HahnSeries.C.{u1, u3} Γ A _inst_1 (Semiring.toNonAssocSemiring.{u3} A _inst_3)) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (RingHom.{u2, u3} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{u3} A _inst_3)) (fun (_x : RingHom.{u2, u3} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{u3} A _inst_3)) => R -> A) (RingHom.hasCoeToFun.{u2, u3} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{u3} A _inst_3)) (algebraMap.{u2, u3} R A _inst_2 _inst_3 _inst_4) r))
-but is expected to have type
- forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u3} Γ] [_inst_2 : CommSemiring.{u1} R] {A : Type.{u2}} [_inst_3 : Semiring.{u2} A] [_inst_4 : Algebra.{u1, u2} R A _inst_2 _inst_3] {r : R}, Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) r) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), succ u1, max (succ u3) (succ u2)} (RingHom.{u1, max u2 u3} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) _x) (MulHomClass.toFunLike.{max (max u3 u1) u2, u1, max u3 u2} (RingHom.{u1, max u2 u3} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3))) R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u3 u2} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3)))) (NonUnitalRingHomClass.toMulHomClass.{max (max u3 u1) u2, u1, max u3 u2} (RingHom.{u1, max u2 u3} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3))) R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3))) (RingHomClass.toNonUnitalRingHomClass.{max (max u3 u1) u2, u1, max u3 u2} (RingHom.{u1, max u2 u3} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3))) R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3)) (RingHom.instRingHomClassRingHom.{u1, max u3 u2} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3)))))) (algebraMap.{u1, max u2 u3} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) _inst_2 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u1, u2} Γ R _inst_1 _inst_2 A _inst_3 _inst_4)) r) (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u2 u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (fun (_x : (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) => HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u2 u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (NonUnitalNonAssocSemiring.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u2 u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u2 u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))))) (HahnSeries.C.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3)) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3)) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3)) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3))))) (algebraMap.{u1, u2} R A _inst_2 _inst_3 _inst_4) r))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.algebra_map_apply HahnSeries.algebraMap_applyₓ'. -/
theorem algebraMap_apply {r : R} : algebraMap R (HahnSeries Γ A) r = C (algebraMap R A r) :=
rfl
@@ -1619,10 +1585,7 @@ section Domain
variable {Γ' : Type _} [OrderedCancelAddCommMonoid Γ']
/- warning: hahn_series.emb_domain_alg_hom -> HahnSeries.embDomainAlgHom is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommSemiring.{u2} R] {A : Type.{u3}} [_inst_3 : Semiring.{u3} A] [_inst_4 : Algebra.{u2, u3} R A _inst_2 _inst_3] {Γ' : Type.{u4}} [_inst_5 : OrderedCancelAddCommMonoid.{u4} Γ'] (f : AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))), (Function.Injective.{succ u1, succ u4} Γ Γ' (coeFn.{max (succ u4) (succ u1), max (succ u1) (succ u4)} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (fun (_x : AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) f)) -> (forall (g : Γ) (g' : Γ), Iff (LE.le.{u4} Γ' (Preorder.toHasLe.{u4} Γ' (PartialOrder.toPreorder.{u4} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u4} Γ' _inst_5))) (coeFn.{max (succ u4) (succ u1), max (succ u1) (succ u4)} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (fun (_x : AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) f g) (coeFn.{max (succ u4) (succ u1), max (succ u1) (succ u4)} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (fun (_x : AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) f g')) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) g g')) -> (AlgHom.{u2, max u1 u3, max u4 u3} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (HahnSeries.{u4, u3} Γ' A (OrderedCancelAddCommMonoid.toPartialOrder.{u4} Γ' _inst_5) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) _inst_2 (HahnSeries.semiring.{u1, u3} Γ A _inst_1 _inst_3) (HahnSeries.semiring.{u4, u3} Γ' A _inst_5 _inst_3) (HahnSeries.algebra.{u1, u2, u3} Γ R _inst_1 _inst_2 A _inst_3 _inst_4) (HahnSeries.algebra.{u4, u2, u3} Γ' R _inst_5 _inst_2 A _inst_3 _inst_4))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommSemiring.{u2} R] {A : Type.{u3}} [_inst_3 : Semiring.{u3} A] [_inst_4 : Algebra.{u2, u3} R A _inst_2 _inst_3] {Γ' : Type.{u4}} [_inst_5 : OrderedCancelAddCommMonoid.{u4} Γ'] (f : AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))), (Function.Injective.{succ u1, succ u4} Γ Γ' (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u4} Γ' (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5))))) (AddMonoidHom.addMonoidHomClass.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))))) f)) -> (forall (g : Γ) (g' : Γ), Iff (LE.le.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (Preorder.toLE.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (PartialOrder.toPreorder.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (OrderedCancelAddCommMonoid.toPartialOrder.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) _inst_5))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u4} Γ' (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5))))) (AddMonoidHom.addMonoidHomClass.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))))) f g) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u4} Γ' (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5))))) (AddMonoidHom.addMonoidHomClass.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))))) f g')) (LE.le.{u1} Γ (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) g g')) -> (AlgHom.{u2, max u3 u1, max u3 u4} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u3} A (Semiring.toMonoidWithZero.{u3} A _inst_3))) (HahnSeries.{u4, u3} Γ' A (OrderedCancelAddCommMonoid.toPartialOrder.{u4} Γ' _inst_5) (MonoidWithZero.toZero.{u3} A (Semiring.toMonoidWithZero.{u3} A _inst_3))) _inst_2 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u3} Γ A _inst_1 _inst_3) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u4, u3} Γ' A _inst_5 _inst_3) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2, u3} Γ R _inst_1 _inst_2 A _inst_3 _inst_4) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u4, u2, u3} Γ' R _inst_5 _inst_2 A _inst_3 _inst_4))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_alg_hom HahnSeries.embDomainAlgHomₓ'. -/
/-- Extending the domain of Hahn series is an algebra homomorphism. -/
@[simps]
@@ -1675,10 +1638,7 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
#align hahn_series.to_power_series HahnSeries.toPowerSeries
/- warning: hahn_series.coeff_to_power_series -> HahnSeries.coeff_toPowerSeries is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))} {n : Nat}, Eq.{succ u1} R (coeFn.{succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (PowerSeries.{u1} R) -> R) (LinearMap.hasCoeToFun.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) (coeFn.{succ u1, succ u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1)))))) (fun (_x : RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1)))))) => (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) -> (PowerSeries.{u1} R)) (RingEquiv.hasCoeToFun.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1)))))) (HahnSeries.toPowerSeries.{u1} R _inst_1) f)) (HahnSeries.coeff.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) f n)
-but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))} {n : Nat}, Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : PowerSeries.{u1} R) => R) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (a : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => PowerSeries.{u1} R) a) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))))))) (HahnSeries.toPowerSeries.{u1} R _inst_1) f)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : PowerSeries.{u1} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => PowerSeries.{u1} R) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))))))) (HahnSeries.toPowerSeries.{u1} R _inst_1) f)) (HahnSeries.coeff.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) f n)
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_power_series HahnSeries.coeff_toPowerSeriesₓ'. -/
theorem coeff_toPowerSeries {f : HahnSeries ℕ R} {n : ℕ} :
PowerSeries.coeff R n f.toPowerSeries = f.coeff n :=
@@ -1686,10 +1646,7 @@ theorem coeff_toPowerSeries {f : HahnSeries ℕ R} {n : ℕ} :
#align hahn_series.coeff_to_power_series HahnSeries.coeff_toPowerSeries
/- warning: hahn_series.coeff_to_power_series_symm -> HahnSeries.coeff_toPowerSeries_symm is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : PowerSeries.{u1} R} {n : Nat}, Eq.{succ u1} R (HahnSeries.coeff.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{succ u1, succ u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (fun (_x : RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) => (PowerSeries.{u1} R) -> (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.hasCoeToFun.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.symm.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.toPowerSeries.{u1} R _inst_1)) f) n) (coeFn.{succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (PowerSeries.{u1} R) -> R) (LinearMap.hasCoeToFun.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) f)
-but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : PowerSeries.{u1} R} {n : Nat}, Eq.{succ u1} R (HahnSeries.coeff.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))))) (RingEquiv.symm.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.toPowerSeries.{u1} R _inst_1)) f) n) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : PowerSeries.{u1} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) f)
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_power_series_symm HahnSeries.coeff_toPowerSeries_symmₓ'. -/
theorem coeff_toPowerSeries_symm {f : PowerSeries R} {n : ℕ} :
(HahnSeries.toPowerSeries.symm f).coeff n = PowerSeries.coeff R n f :=
@@ -1724,10 +1681,7 @@ theorem ofPowerSeries_injective : Function.Injective (ofPowerSeries Γ R) :=
#align hahn_series.of_power_series_injective HahnSeries.ofPowerSeries_injective
/- warning: hahn_series.of_power_series_apply -> HahnSeries.ofPowerSeries_apply is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (x : PowerSeries.{u2} R), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) x) (HahnSeries.embDomain.{0, u2, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (RelEmbedding.mk.{0, u1} Nat Γ (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))))) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2))))) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) (fun (a : Nat) (b : Nat) => Eq.mpr.{0} (Iff (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b)) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b)) (Iff (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) a) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) b)) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b)) (id_tag Tactic.IdTag.simp (Eq.{1} Prop (Iff (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b)) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b)) (Iff (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) a) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) b)) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b))) ((fun (a : Prop) (a_1 : Prop) (e_1 : Eq.{1} Prop a a_1) (b : Prop) (b_1 : Prop) (e_2 : Eq.{1} Prop b b_1) => congr.{1, 1} Prop Prop (Iff a) (Iff a_1) b b_1 (congr_arg.{1, 1} Prop (Prop -> Prop) a a_1 Iff e_1) e_2) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b)) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) a) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) b)) ((fun [self : LE.{u1} Γ] (ᾰ : Γ) (ᾰ_1 : Γ) (e_2 : Eq.{succ u1} Γ ᾰ ᾰ_1) (ᾰ_2 : Γ) (ᾰ_3 : Γ) (e_3 : Eq.{succ u1} Γ ᾰ_2 ᾰ_3) => congr.{succ u1, 1} Γ Prop (LE.le.{u1} Γ self ᾰ) (LE.le.{u1} Γ self ᾰ_1) ᾰ_2 ᾰ_3 (congr_arg.{succ u1, succ u1} Γ (Γ -> Prop) ᾰ ᾰ_1 (LE.le.{u1} Γ self) e_2) e_3) (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) a) (congr_fun.{1, succ u1} Nat (fun (ᾰ : Nat) => Γ) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2))))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (Function.Embedding.coeFn_mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) b) (congr_fun.{1, succ u1} Nat (fun (ᾰ : Nat) => Γ) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2))))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (Function.Embedding.coeFn_mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b)) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b) (rfl.{1} Prop (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b)))) (Nat.cast_le.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2) a b))) (coeFn.{succ u2, succ u2} (RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Distrib.toHasMul.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (Distrib.toHasAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (HahnSeries.hasMul.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.hasAdd.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (fun (_x : RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Distrib.toHasMul.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (Distrib.toHasAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (HahnSeries.hasMul.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.hasAdd.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) => (PowerSeries.{u2} R) -> (HahnSeries.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingEquiv.hasCoeToFun.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Distrib.toHasMul.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (Distrib.toHasAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (HahnSeries.hasMul.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.hasAdd.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingEquiv.symm.{u2, u2} (HahnSeries.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (PowerSeries.{u2} R) (HahnSeries.hasMul.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.hasAdd.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Distrib.toHasMul.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (Distrib.toHasAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (HahnSeries.toPowerSeries.{u2} R _inst_1)) x))
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (x : PowerSeries.{u2} R), Eq.{max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) x) (HahnSeries.embDomain.{0, u2, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) Γ (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (RelEmbedding.mk.{0, u1} Nat Γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Nat) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Nat) => LE.le.{0} Nat (Preorder.toLE.{0} Nat (PartialOrder.toPreorder.{0} Nat (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ) => LE.le.{u1} Γ (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (Function.Embedding.mk.{1, succ u1} Nat Γ (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedSemiring.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2))) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) (id.{0} (forall {a : Nat} {b : Nat}, Iff (LE.le.{u1} Γ (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2))) (FunLike.coe.{succ u1, 1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) Nat (fun (a : Nat) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : Nat) => Γ) a) (EmbeddingLike.toFunLike.{succ u1, 1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) Nat Γ (Function.instEmbeddingLikeEmbedding.{1, succ u1} Nat Γ)) (Function.Embedding.mk.{1, succ u1} Nat Γ (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedSemiring.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2))) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) (FunLike.coe.{succ u1, 1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) Nat (fun (a : Nat) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : Nat) => Γ) a) (EmbeddingLike.toFunLike.{succ u1, 1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) Nat Γ (Function.instEmbeddingLikeEmbedding.{1, succ u1} Nat Γ)) (Function.Embedding.mk.{1, succ u1} Nat Γ (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedSemiring.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2))) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b)) (LE.le.{0} Nat (Preorder.toLE.{0} Nat (PartialOrder.toPreorder.{0} Nat (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring))) a b)) (fun {a._@.Mathlib.RingTheory.HahnSeries._hyg.10651 : Nat} {b._@.Mathlib.RingTheory.HahnSeries._hyg.10652 : Nat} => Nat.cast_le.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2) a._@.Mathlib.RingTheory.HahnSeries._hyg.10651 b._@.Mathlib.RingTheory.HahnSeries._hyg.10652))) (FunLike.coe.{succ u2, succ u2, succ u2} (RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{u2, u2, u2} (RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u2} (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonUnitalSemiring.{u2} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u2, u2, u2} (RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonUnitalSemiring.{u2} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u2, u2, u2} (RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonUnitalSemiring.{u2} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))) (RingEquiv.symm.{u2, u2} (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.toPowerSeries.{u2} R _inst_1)) x))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_apply HahnSeries.ofPowerSeries_applyₓ'. -/
@[simp]
theorem ofPowerSeries_apply (x : PowerSeries R) :
@@ -1742,20 +1696,14 @@ theorem ofPowerSeries_apply (x : PowerSeries R) :
#align hahn_series.of_power_series_apply HahnSeries.ofPowerSeries_apply
/- warning: hahn_series.of_power_series_apply_coeff -> HahnSeries.ofPowerSeries_apply_coeff is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (x : PowerSeries.{u2} R) (n : Nat), Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) x) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) n)) (coeFn.{succ u2, succ u2} (LinearMap.{u2, u2, u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) R (PowerSeries.addCommMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.module.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) R (PowerSeries.addCommMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.module.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1)) => (PowerSeries.{u2} R) -> R) (LinearMap.hasCoeToFun.{u2, u2, u2, u2} R R (PowerSeries.{u2} R) R _inst_1 _inst_1 (PowerSeries.addCommMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.module.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.coeff.{u2} R _inst_1 n) x)
-but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (x : PowerSeries.{u2} R) (n : Nat), Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) x) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)) n)) (FunLike.coe.{succ u2, succ u2, succ u2} (LinearMap.{u2, u2, u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1)) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : PowerSeries.{u2} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u2, u2} R R (PowerSeries.{u2} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.coeff.{u2} R _inst_1 n) x)
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_apply_coeff HahnSeries.ofPowerSeries_apply_coeffₓ'. -/
theorem ofPowerSeries_apply_coeff (x : PowerSeries R) (n : ℕ) :
(ofPowerSeries Γ R x).coeff n = PowerSeries.coeff R n x := by simp
#align hahn_series.of_power_series_apply_coeff HahnSeries.ofPowerSeries_apply_coeff
/- warning: hahn_series.of_power_series_C -> HahnSeries.ofPowerSeries_C is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (r : R), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) (coeFn.{succ u2, succ u2} (RingHom.{u2, u2} R (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, u2} R (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))) => R -> (PowerSeries.{u2} R)) (RingHom.hasCoeToFun.{u2, u2} R (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))) (PowerSeries.C.{u2} R _inst_1) r)) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.C.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)) r)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] [_inst_2 : StrictOrderedSemiring.{u2} Γ] (r : R), Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{succ u1, succ u1, succ u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => PowerSeries.{u1} R) a) (MulHomClass.toFunLike.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (RingHom.instRingHomClassRingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (PowerSeries.C.{u1} R _inst_1) r)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.instRingHomClassRingHom.{u1, max u2 u1} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u2, u1} Γ R _inst_1 _inst_2) (FunLike.coe.{succ u1, succ u1, succ u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => PowerSeries.{u1} R) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (RingHom.instRingHomClassRingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (PowerSeries.C.{u1} R _inst_1) r)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (HahnSeries.C.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)) r)
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_C HahnSeries.ofPowerSeries_Cₓ'. -/
@[simp]
theorem ofPowerSeries_C (r : R) : ofPowerSeries Γ R (PowerSeries.C R r) = HahnSeries.C r :=
@@ -1773,10 +1721,7 @@ theorem ofPowerSeries_C (r : R) : ofPowerSeries Γ R (PowerSeries.C R r) = HahnS
#align hahn_series.of_power_series_C HahnSeries.ofPowerSeries_C
/- warning: hahn_series.of_power_series_X -> HahnSeries.ofPowerSeries_X is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ], Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) (PowerSeries.X.{u2} R _inst_1)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (OfNat.ofNat.{u1} Γ 1 (OfNat.mk.{u1} Γ 1 (One.one.{u1} Γ (AddMonoidWithOne.toOne.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] [_inst_2 : StrictOrderedSemiring.{u2} Γ], Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.X.{u1} R _inst_1)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.instRingHomClassRingHom.{u1, max u2 u1} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u2, u1} Γ R _inst_1 _inst_2) (PowerSeries.X.{u1} R _inst_1)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (ZeroHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) R (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (ZeroHom.zeroHomClass.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))))) (HahnSeries.single.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (OfNat.ofNat.{u2} Γ 1 (One.toOfNat1.{u2} Γ (Semiring.toOne.{u2} Γ (StrictOrderedSemiring.toSemiring.{u2} Γ _inst_2))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_Xₓ'. -/
@[simp]
theorem ofPowerSeries_X : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
@@ -1794,10 +1739,7 @@ theorem ofPowerSeries_X : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_X
/- warning: hahn_series.of_power_series_X_pow -> HahnSeries.ofPowerSeries_X_pow is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} [_inst_2 : StrictOrderedSemiring.{u1} Γ] {R : Type.{u2}} [_inst_3 : CommSemiring.{u2} R] (n : Nat), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_3) _inst_2) (HPow.hPow.{u2, 0, u2} (PowerSeries.{u2} R) Nat (PowerSeries.{u2} R) (instHPow.{u2, 0} (PowerSeries.{u2} R) Nat (Monoid.Pow.{u2} (PowerSeries.{u2} R) (MonoidWithZero.toMonoid.{u2} (PowerSeries.{u2} R) (Semiring.toMonoidWithZero.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (PowerSeries.X.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)) n)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) n)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))))))
-but is expected to have type
- forall {Γ : Type.{u1}} [_inst_2 : StrictOrderedSemiring.{u1} Γ] {R : Type.{u2}} [_inst_3 : CommSemiring.{u2} R] (n : Nat), Eq.{max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HPow.hPow.{u2, 0, u2} (PowerSeries.{u2} R) Nat (PowerSeries.{u2} R) (instHPow.{u2, 0} (PowerSeries.{u2} R) Nat (Monoid.Pow.{u2} (PowerSeries.{u2} R) (MonoidWithZero.toMonoid.{u2} (PowerSeries.{u2} R) (Semiring.toMonoidWithZero.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (PowerSeries.X.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)) n)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_3) _inst_2) (HPow.hPow.{u2, 0, u2} (PowerSeries.{u2} R) Nat (PowerSeries.{u2} R) (instHPow.{u2, 0} (PowerSeries.{u2} R) Nat (Monoid.Pow.{u2} (PowerSeries.{u2} R) (MonoidWithZero.toMonoid.{u2} (PowerSeries.{u2} R) (Semiring.toMonoidWithZero.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (PowerSeries.X.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)) n)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) _x) (ZeroHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (ZeroHom.zeroHomClass.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (HahnSeries.single.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)) n)) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_powₓ'. -/
@[simp]
theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
@@ -1853,10 +1795,7 @@ def toMvPowerSeries {σ : Type _} [Fintype σ] : HahnSeries (σ →₀ ℕ) R
variable {σ : Type _} [Fintype σ]
/- warning: hahn_series.coeff_to_mv_power_series -> HahnSeries.coeff_toMvPowerSeries is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))} {n : Finsupp.{u2, 0} σ Nat Nat.hasZero}, Eq.{succ u1} R (coeFn.{max (succ (max u2 u1)) (succ u1), max (succ (max u2 u1)) (succ u1)} (LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (MvPowerSeries.{u2, u1} σ R) -> R) (LinearMap.hasCoeToFun.{u1, u1, max u2 u1, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (RingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1)))))) (fun (_x : RingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1)))))) => (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) -> (MvPowerSeries.{u2, u1} σ R)) (RingEquiv.hasCoeToFun.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1)))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3) f)) (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) f n)
-but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))} {n : Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)}, Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : MvPowerSeries.{u2, u1} σ R) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (a : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => MvPowerSeries.{u2, u1} σ R) a) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3) f)) (FunLike.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2), succ u1} (LinearMap.{u1, u1, max u1 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : MvPowerSeries.{u2, u1} σ R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u1 u2, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => MvPowerSeries.{u2, u1} σ R) _x) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3) f)) (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) f n)
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_mv_power_series HahnSeries.coeff_toMvPowerSeriesₓ'. -/
theorem coeff_toMvPowerSeries {f : HahnSeries (σ →₀ ℕ) R} {n : σ →₀ ℕ} :
MvPowerSeries.coeff R n f.toMvPowerSeries = f.coeff n :=
@@ -1864,10 +1803,7 @@ theorem coeff_toMvPowerSeries {f : HahnSeries (σ →₀ ℕ) R} {n : σ →₀
#align hahn_series.coeff_to_mv_power_series HahnSeries.coeff_toMvPowerSeries
/- warning: hahn_series.coeff_to_mv_power_series_symm -> HahnSeries.coeff_toMvPowerSeries_symm is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : MvPowerSeries.{u2, u1} σ R} {n : Finsupp.{u2, 0} σ Nat Nat.hasZero}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (fun (_x : RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) => (MvPowerSeries.{u2, u1} σ R) -> (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.hasCoeToFun.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.symm.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3)) f) n) (coeFn.{max (succ (max u2 u1)) (succ u1), max (succ (max u2 u1)) (succ u1)} (LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (MvPowerSeries.{u2, u1} σ R) -> R) (LinearMap.hasCoeToFun.{u1, u1, max u2 u1, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) f)
-but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : MvPowerSeries.{u2, u1} σ R} {n : Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : MvPowerSeries.{u2, u1} σ R) => HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))))) (RingEquiv.symm.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3)) f) n) (FunLike.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2), succ u1} (LinearMap.{u1, u1, max u1 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : MvPowerSeries.{u2, u1} σ R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u1 u2, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) f)
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_mv_power_series_symm HahnSeries.coeff_toMvPowerSeries_symmₓ'. -/
theorem coeff_toMvPowerSeries_symm {f : MvPowerSeries σ R} {n : σ →₀ ℕ} :
(HahnSeries.toMvPowerSeries.symm f).coeff n = MvPowerSeries.coeff R n f :=
@@ -1932,10 +1868,7 @@ instance powerSeriesAlgebra {S : Type _} [CommSemiring S] [Algebra S (PowerSerie
variable {R} {S : Type _} [CommSemiring S] [Algebra S (PowerSeries R)]
/- warning: hahn_series.algebra_map_apply' -> HahnSeries.algebraMap_apply' is a dubious translation:
-lean 3 declaration is
- forall (Γ : Type.{u1}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ] {S : Type.{u3}} [_inst_5 : CommSemiring.{u3} S] [_inst_6 : Algebra.{u3, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))] (x : S), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (RingHom.{u3, max u1 u2} S (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u3, max u1 u2} S (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) => S -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (RingHom.hasCoeToFun.{u3, max u1 u2} S (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (algebraMap.{u3, max u1 u2} S (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_5 (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u1, u2, u3} Γ R _inst_1 _inst_4 S _inst_5 _inst_6)) x) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_1) _inst_4) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (RingHom.{u3, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u3, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => S -> (PowerSeries.{u2} R)) (RingHom.hasCoeToFun.{u3, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (algebraMap.{u3, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) _inst_6) x))
-but is expected to have type
- forall (Γ : Type.{u3}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u3} Γ] {S : Type.{u1}} [_inst_5 : CommSemiring.{u1} S] [_inst_6 : Algebra.{u1, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))] (x : S), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (RingHom.{u1, max u2 u3} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max (max u3 u2) u1, u1, max u3 u2} (RingHom.{u1, max u2 u3} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)))) (NonUnitalNonAssocSemiring.toMul.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max (max u3 u2) u1, u1, max u3 u2} (RingHom.{u1, max u2 u3} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max (max u3 u2) u1, u1, max u3 u2} (RingHom.{u1, max u2 u3} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u1, max u3 u2} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))))) (algebraMap.{u1, max u2 u3} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) _inst_5 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u3, u2, u1} Γ R _inst_1 _inst_4 S _inst_5 _inst_6)) x) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (RingHom.{u2, max u2 u3} (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) _x) (MulHomClass.toFunLike.{max u3 u2, u2, max u3 u2} (RingHom.{u2, max u2 u3} (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u2, u2, max u3 u2} (RingHom.{u2, max u2 u3} (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u2, u2, max u3 u2} (RingHom.{u2, max u2 u3} (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u2, max u3 u2} (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (HahnSeries.ofPowerSeries.{u3, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_1) _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => PowerSeries.{u2} R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) S (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) S (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u1, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (algebraMap.{u1, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) _inst_6) x))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.algebra_map_apply' HahnSeries.algebraMap_apply'ₓ'. -/
theorem algebraMap_apply' (x : S) :
algebraMap S (HahnSeries Γ R) x = ofPowerSeries Γ R (algebraMap S (PowerSeries R) x) :=
@@ -1943,10 +1876,7 @@ theorem algebraMap_apply' (x : S) :
#align hahn_series.algebra_map_apply' HahnSeries.algebraMap_apply'
/- warning: polynomial.algebra_map_hahn_series_apply -> Polynomial.algebraMap_hahnSeries_apply is a dubious translation:
-lean 3 declaration is
- forall (Γ : Type.{u1}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ] (f : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) => (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (algebraMap.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Polynomial.commSemiring.{u2} R _inst_1) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u1, u2, u2} Γ R _inst_1 _inst_4 (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1) (PowerSeries.algebraPolynomial.{u2, u2} R R _inst_1 _inst_1 (Algebra.id.{u2} R _inst_1)))) f) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_1) _inst_4) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) (HasLiftT.mk.{succ u2, succ u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) (CoeTCₓ.coe.{succ u2, succ u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) (coeBase.{succ u2, succ u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) (Polynomial.coeToPowerSeries.{u2} R _inst_1)))) f))
-but is expected to have type
- forall (Γ : Type.{u1}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ] (f : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)), Eq.{max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (fun (_x : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))))) (algebraMap.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Polynomial.commSemiring.{u2} R _inst_1) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u1, u2, u2} Γ R _inst_1 _inst_4 (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1) (PowerSeries.algebraPolynomial.{u2, u2} R R _inst_1 _inst_1 (Algebra.id.{u2} R _inst_1)))) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_1) _inst_4) (Polynomial.ToPowerSeries.{u2} R _inst_1 f))
+<too large>
Case conversion may be inaccurate. Consider using '#align polynomial.algebra_map_hahn_series_apply Polynomial.algebraMap_hahnSeries_applyₓ'. -/
@[simp]
theorem Polynomial.algebraMap_hahnSeries_apply (f : R[X]) :
@@ -1955,10 +1885,7 @@ theorem Polynomial.algebraMap_hahnSeries_apply (f : R[X]) :
#align polynomial.algebra_map_hahn_series_apply Polynomial.algebraMap_hahnSeries_apply
/- warning: polynomial.algebra_map_hahn_series_injective -> Polynomial.algebraMap_hahnSeries_injective is a dubious translation:
-lean 3 declaration is
- forall (Γ : Type.{u1}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ], Function.Injective.{succ u2, max (succ u1) (succ u2)} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) => (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (algebraMap.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Polynomial.commSemiring.{u2} R _inst_1) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u1, u2, u2} Γ R _inst_1 _inst_4 (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1) (PowerSeries.algebraPolynomial.{u2, u2} R R _inst_1 _inst_1 (Algebra.id.{u2} R _inst_1)))))
-but is expected to have type
- forall (Γ : Type.{u1}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ], Function.Injective.{succ u2, max (succ u1) (succ u2)} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (fun (_x : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))))) (algebraMap.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Polynomial.commSemiring.{u2} R _inst_1) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u1, u2, u2} Γ R _inst_1 _inst_4 (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1) (PowerSeries.algebraPolynomial.{u2, u2} R R _inst_1 _inst_1 (Algebra.id.{u2} R _inst_1)))))
+<too large>
Case conversion may be inaccurate. Consider using '#align polynomial.algebra_map_hahn_series_injective Polynomial.algebraMap_hahnSeries_injectiveₓ'. -/
theorem Polynomial.algebraMap_hahnSeries_injective :
Function.Injective (algebraMap R[X] (HahnSeries Γ R)) :=
@@ -2004,10 +1931,7 @@ def addVal : AddValuation (HahnSeries Γ R) (WithTop Γ) :=
variable {Γ} {R}
/- warning: hahn_series.add_val_apply -> HahnSeries.addVal_apply is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))}, Eq.{succ u1} (WithTop.{u1} Γ) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2)) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 _inst_2 _inst_3) x) (ite.{succ u1} (WithTop.{u1} Γ) (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))))))) (Classical.propDecidable (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))))))))) (Top.top.{u1} (WithTop.{u1} Γ) (WithTop.hasTop.{u1} Γ)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) Γ (WithTop.{u1} Γ) (HasLiftT.mk.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (CoeTCₓ.coe.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (WithTop.hasCoeT.{u1} Γ))) (HahnSeries.order.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))) x)))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : Ring.{u1} R] [_inst_3 : IsDomain.{u1} R (Ring.toSemiring.{u1} R _inst_2)] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))}, Eq.{succ u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 _inst_2 _inst_3) x) (ite.{succ u2} (WithTop.{u2} Γ) (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))))))) (Classical.propDecidable (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))))))) (Top.top.{u2} (WithTop.{u2} Γ) (WithTop.top.{u2} Γ)) (WithTop.some.{u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) x)))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.add_val_apply HahnSeries.addVal_applyₓ'. -/
theorem addVal_apply {x : HahnSeries Γ R} :
addVal Γ R x = if x = (0 : HahnSeries Γ R) then (⊤ : WithTop Γ) else x.order :=
@@ -2015,10 +1939,7 @@ theorem addVal_apply {x : HahnSeries Γ R} :
#align hahn_series.add_val_apply HahnSeries.addVal_apply
/- warning: hahn_series.add_val_apply_of_ne -> HahnSeries.addVal_apply_of_ne is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))}, (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))))))) -> (Eq.{succ u1} (WithTop.{u1} Γ) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2)) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 _inst_2 _inst_3) x) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) Γ (WithTop.{u1} Γ) (HasLiftT.mk.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (CoeTCₓ.coe.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (WithTop.hasCoeT.{u1} Γ))) (HahnSeries.order.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))) x)))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : Ring.{u1} R] [_inst_3 : IsDomain.{u1} R (Ring.toSemiring.{u1} R _inst_2)] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))}, (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))))))) -> (Eq.{succ u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 _inst_2 _inst_3) x) (WithTop.some.{u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) x)))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.add_val_apply_of_ne HahnSeries.addVal_apply_of_neₓ'. -/
@[simp]
theorem addVal_apply_of_ne {x : HahnSeries Γ R} (hx : x ≠ 0) : addVal Γ R x = x.order :=
@@ -2041,10 +1962,7 @@ theorem addVal_le_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g
end Valuation
/- warning: hahn_series.is_pwo_Union_support_powers -> HahnSeries.isPwo_iUnion_support_powers is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))}, (LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2)) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 _inst_2 _inst_3) x)) -> (Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))) (Set.iUnion.{u1, 1} Γ Nat (fun (n : Nat) => HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))) (HPow.hPow.{max u1 u2, 0, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) Nat (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (instHPow.{max u1 u2, 0} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) Nat (Monoid.Pow.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (Ring.toMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2)))) x n))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : Ring.{u1} R] [_inst_3 : IsDomain.{u1} R (Ring.toSemiring.{u1} R _inst_2)] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))}, (LT.lt.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (WithTop.zero.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)))))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 _inst_2 _inst_3) x)) -> (Set.IsPwo.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))) (Set.iUnion.{u2, 1} Γ Nat (fun (n : Nat) => HahnSeries.support.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))) (HPow.hPow.{max u2 u1, 0, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) Nat (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (instHPow.{max u2 u1, 0} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) Nat (Monoid.Pow.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (MonoidWithZero.toMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (Semiring.toMonoidWithZero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (Ring.toSemiring.{u1} R _inst_2)))))) x n))))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPwo_iUnion_support_powersₓ'. -/
theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
{x : HahnSeries Γ R} (hx : 0 < addVal Γ R x) : (⋃ n : ℕ, (x ^ n).support).IsPwo :=
@@ -2443,10 +2361,7 @@ def lsum : SummableFamily Γ R α →ₗ[HahnSeries Γ R] HahnSeries Γ R
#align hahn_series.summable_family.lsum HahnSeries.SummableFamily.lsum
/- warning: hahn_series.summable_family.hsum_sub -> HahnSeries.SummableFamily.hsum_sub is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {α : Type.{u2}} {R : Type.{u3}} [_inst_3 : Ring.{u3} R] {s : HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α} {t : HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α}, Eq.{max (succ u1) (succ u3)} (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (HahnSeries.SummableFamily.hsum.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α (HSub.hSub.{max u1 u3 u2, max u1 u3 u2, max u1 u3 u2} (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (instHSub.{max u1 u3 u2} (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (SubNegMonoid.toHasSub.{max u1 u3 u2} (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (AddGroup.toSubNegMonoid.{max u1 u3 u2} (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (AddCommGroup.toAddGroup.{max u1 u3 u2} (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.addCommGroup.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))) α))))) s t)) (HSub.hSub.{max u1 u3, max u1 u3, max u1 u3} (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (instHSub.{max u1 u3} (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (SubNegMonoid.toHasSub.{max u1 u3} (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (AddGroup.toSubNegMonoid.{max u1 u3} (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (HahnSeries.addGroup.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddGroupWithOne.toAddGroup.{u3} R (AddCommGroupWithOne.toAddGroupWithOne.{u3} R (Ring.toAddCommGroupWithOne.{u3} R _inst_3))))))) (HahnSeries.SummableFamily.hsum.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α s) (HahnSeries.SummableFamily.hsum.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α t))
-but is expected to have type
- forall {Γ : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] {α : Type.{u1}} {R : Type.{u3}} [_inst_3 : Ring.{u3} R] {s : HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α} {t : HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α}, Eq.{max (succ u2) (succ u3)} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (HahnSeries.SummableFamily.hsum.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α (HSub.hSub.{max (max u2 u1) u3, max (max u2 u1) u3, max (max u2 u1) u3} (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (instHSub.{max (max u2 u1) u3} (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (SubNegMonoid.toSub.{max (max u2 u1) u3} (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (AddGroup.toSubNegMonoid.{max (max u2 u1) u3} (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (AddCommGroup.toAddGroup.{max (max u2 u1) u3} (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (Ring.toAddCommGroup.{u3} R _inst_3) α))))) s t)) (HSub.hSub.{max u2 u3, max u2 u3, max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (instHSub.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (Ring.toSub.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u3} Γ R _inst_1 _inst_3))) (HahnSeries.SummableFamily.hsum.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α s) (HahnSeries.SummableFamily.hsum.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α t))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_sub HahnSeries.SummableFamily.hsum_subₓ'. -/
@[simp]
theorem hsum_sub {R : Type _} [Ring R] {s t : SummableFamily Γ R α} :
@@ -2647,10 +2562,7 @@ def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R
variable {x : HahnSeries Γ R} (hx : 0 < addVal Γ R x)
/- warning: hahn_series.summable_family.coe_powers -> HahnSeries.SummableFamily.coe_powers is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))} (hx : LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 (CommRing.toRing.{u2} R _inst_2) _inst_3) x)), Eq.{max 1 (succ u1) (succ u2)} (Nat -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))))) (coeFn.{max (succ u1) (succ u2), max 1 (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (fun (_x : HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) => Nat -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.powers.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x hx)) (HPow.hPow.{max u1 u2, 0, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) Nat (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHPow.{max u1 u2, 0} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) Nat (Monoid.Pow.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (Ring.toMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2))))) x)
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : CommRing.{u1} R] [_inst_3 : IsDomain.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))} (hx : LT.lt.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.zero.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)))))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 (CommRing.toRing.{u1} R _inst_2) _inst_3) x)), Eq.{max (succ u2) (succ u1)} (Nat -> (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))))))) (HahnSeries.SummableFamily.toFun.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat (HahnSeries.SummableFamily.powers.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x hx)) (HPow.hPow.{max u2 u1, 0, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) Nat (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) (instHPow.{max u2 u1, 0} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) Nat (Monoid.Pow.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (MonoidWithZero.toMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (Semiring.toMonoidWithZero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x)
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_powers HahnSeries.SummableFamily.coe_powersₓ'. -/
@[simp]
theorem coe_powers : ⇑(powers x hx) = pow x :=
@@ -2658,10 +2570,7 @@ theorem coe_powers : ⇑(powers x hx) = pow x :=
#align hahn_series.summable_family.coe_powers HahnSeries.SummableFamily.coe_powers
/- warning: hahn_series.summable_family.emb_domain_succ_smul_powers -> HahnSeries.SummableFamily.embDomain_succ_smul_powers is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))} (hx : LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 (CommRing.toRing.{u2} R _inst_2) _inst_3) x)), Eq.{max (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.embDomain.{u1, u2, 0, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat Nat (SMul.smul.{max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.hasSmul.{u1, u2, 0} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2)) Nat) x (HahnSeries.SummableFamily.powers.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x hx)) (Function.Embedding.mk.{1, 1} Nat Nat Nat.succ Nat.succ_injective)) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (instHSub.{max u1 u2} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (AddCommGroup.toAddGroup.{max u1 u2} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.addCommGroup.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))) Nat))))) (HahnSeries.SummableFamily.powers.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x hx) (HahnSeries.SummableFamily.ofFinsupp.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat (Finsupp.single.{0, max u1 u2} Nat (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) (HahnSeries.hasOne.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : CommRing.{u1} R] [_inst_3 : IsDomain.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))} (hx : LT.lt.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.zero.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)))))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 (CommRing.toRing.{u1} R _inst_2) _inst_3) x)), Eq.{max (succ u2) (succ u1)} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.embDomain.{u2, u1, 0, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat Nat (HSMul.hSMul.{max u2 u1, max u1 u2, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (instHSMul.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.instSMulHahnSeriesToPartialOrderToZeroToMonoidWithZeroSummableFamilyToAddCommMonoidToNonUnitalNonAssocSemiringToNonAssocSemiring.{u2, u1, 0} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)) Nat)) x (HahnSeries.SummableFamily.powers.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x hx)) (Function.Embedding.mk.{1, 1} Nat Nat Nat.succ Nat.succ_injective)) (HSub.hSub.{max u2 u1, max u1 u2, max u2 u1} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (instHSub.{max u2 u1} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (SubNegMonoid.toSub.{max u2 u1} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (AddGroup.toSubNegMonoid.{max u2 u1} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (AddCommGroup.toAddGroup.{max u2 u1} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_2)) Nat))))) (HahnSeries.SummableFamily.powers.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x hx) (HahnSeries.SummableFamily.ofFinsupp.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat (Finsupp.single.{0, max u1 u2} Nat (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) 1 (One.toOfNat1.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.emb_domain_succ_smul_powers HahnSeries.SummableFamily.embDomain_succ_smul_powersₓ'. -/
theorem embDomain_succ_smul_powers :
(x • powers x hx).embDomain ⟨Nat.succ, Nat.succ_injective⟩ =
@@ -2679,10 +2588,7 @@ theorem embDomain_succ_smul_powers :
#align hahn_series.summable_family.emb_domain_succ_smul_powers HahnSeries.SummableFamily.embDomain_succ_smul_powers
/- warning: hahn_series.summable_family.one_sub_self_mul_hsum_powers -> HahnSeries.SummableFamily.one_sub_self_mul_hsum_powers is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))} (hx : LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 (CommRing.toRing.{u2} R _inst_2) _inst_3) x)), Eq.{succ (max u1 u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasMul.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.addGroup.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddGroupWithOne.toAddGroup.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasOne.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) x) (HahnSeries.SummableFamily.hsum.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat (HahnSeries.SummableFamily.powers.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x hx))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasOne.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : CommRing.{u1} R] [_inst_3 : IsDomain.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))} (hx : LT.lt.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.zero.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)))))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 (CommRing.toRing.{u1} R _inst_2) _inst_3) x)), Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (instHMul.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (instHSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (Ring.toSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) 1 (One.toOfNat1.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) x) (HahnSeries.SummableFamily.hsum.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat (HahnSeries.SummableFamily.powers.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x hx))) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) 1 (One.toOfNat1.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.one_sub_self_mul_hsum_powers HahnSeries.SummableFamily.one_sub_self_mul_hsum_powersₓ'. -/
theorem one_sub_self_mul_hsum_powers : (1 - x) * (powers x hx).hsum = 1 :=
by
@@ -2704,10 +2610,7 @@ section IsDomain
variable [CommRing R] [IsDomain R]
/- warning: hahn_series.unit_aux -> HahnSeries.unit_aux is a dubious translation:
-lean 3 declaration is
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] (x : HahnSeries.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) {r : R}, (Eq.{succ u2} R (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (Ring.toDistrib.{u2} R (CommRing.toRing.{u2} R _inst_2)))) r (HahnSeries.coeff.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) x (HahnSeries.order.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (SubNegMonoid.toAddMonoid.{u1} Γ (AddGroup.toSubNegMonoid.{u1} Γ (AddCommGroup.toAddGroup.{u1} Γ (OrderedAddCommGroup.toAddCommGroup.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))))) x))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) -> (LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (SubNegMonoid.toAddMonoid.{u1} Γ (AddGroup.toSubNegMonoid.{u1} Γ (AddCommGroup.toAddGroup.{u1} Γ (OrderedAddCommGroup.toAddCommGroup.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1)) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1)))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1)) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1)))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1)) (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.addVal.{u1, u2} Γ R (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2) _inst_3) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.addGroup.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (AddGroupWithOne.toAddGroup.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasOne.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasMul.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasMul.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) (HahnSeries.C.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))) r) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (Neg.neg.{u1} Γ (SubNegMonoid.toHasNeg.{u1} Γ (AddGroup.toSubNegMonoid.{u1} Γ (AddCommGroup.toAddGroup.{u1} Γ (OrderedAddCommGroup.toAddCommGroup.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))) (HahnSeries.order.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (SubNegMonoid.toAddMonoid.{u1} Γ (AddGroup.toSubNegMonoid.{u1} Γ (AddCommGroup.toAddGroup.{u1} Γ (OrderedAddCommGroup.toAddCommGroup.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))))) x))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))))) x))))
-but is expected to have type
- forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedAddCommGroup.{u2} Γ] [_inst_2 : CommRing.{u1} R] [_inst_3 : IsDomain.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))] (x : HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) {r : R}, (Eq.{succ u1} R (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (NonUnitalNonAssocRing.toMul.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) r (HahnSeries.coeff.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) x (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (instHSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (Ring.toSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) 1 (One.toOfNat1.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.C.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.single.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Neg.neg.{u2} Γ (NegZeroClass.toNeg.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x))) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (instHSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (Ring.toSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) 1 (One.toOfNat1.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.C.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.single.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Neg.neg.{u2} Γ (NegZeroClass.toNeg.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x))) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (instHSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (Ring.toSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) 1 (One.toOfNat1.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.C.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.single.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Neg.neg.{u2} Γ (NegZeroClass.toNeg.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x))) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (instHSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (Ring.toSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) 1 (One.toOfNat1.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.C.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.single.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Neg.neg.{u2} Γ (NegZeroClass.toNeg.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x))) (WithTop.zero.{u2} Γ (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)))))))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)))) (HahnSeries.addVal.{u2, u1} Γ R (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2) _inst_3) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (instHSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (Ring.toSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) 1 (One.toOfNat1.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.C.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.single.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Neg.neg.{u2} Γ (NegZeroClass.toNeg.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x))))
+<too large>
Case conversion may be inaccurate. Consider using '#align hahn_series.unit_aux HahnSeries.unit_auxₓ'. -/
theorem unit_aux (x : HahnSeries Γ R) {r : R} (hr : r * x.coeff x.order = 1) :
0 < addVal Γ R (1 - C r * single (-x.order) 1 * x) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/ef95945cd48c932c9e034872bd25c3c220d9c946
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Aaron Anderson
! This file was ported from Lean 3 source module ring_theory.hahn_series
-! leanprover-community/mathlib commit a484a7d0eade4e1268f4fb402859b6686037f965
+! leanprover-community/mathlib commit 61db041ab8e4aaf8cb5c7dc10a7d4ff261997536
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -18,6 +18,9 @@ import Mathbin.Algebra.Order.Group.WithTop
/-!
# Hahn Series
+
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
If `Γ` is ordered and `R` has zero, then `hahn_series Γ R` consists of formal series over `Γ` with
coefficients in `R`, whose supports are partially well-ordered. With further structure on `R` and
`Γ`, we can add further structure on `hahn_series Γ R`, with the most studied case being when `Γ` is
mathlib commit https://github.com/leanprover-community/mathlib/commit/8d33f09cd7089ecf074b4791907588245aec5d1b
@@ -1675,7 +1675,7 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))} {n : Nat}, Eq.{succ u1} R (coeFn.{succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (PowerSeries.{u1} R) -> R) (LinearMap.hasCoeToFun.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) (coeFn.{succ u1, succ u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1)))))) (fun (_x : RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1)))))) => (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) -> (PowerSeries.{u1} R)) (RingEquiv.hasCoeToFun.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1)))))) (HahnSeries.toPowerSeries.{u1} R _inst_1) f)) (HahnSeries.coeff.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) f n)
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))} {n : Nat}, Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : PowerSeries.{u1} R) => R) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (a : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => PowerSeries.{u1} R) a) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))))))) (HahnSeries.toPowerSeries.{u1} R _inst_1) f)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : PowerSeries.{u1} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => PowerSeries.{u1} R) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))))))) (HahnSeries.toPowerSeries.{u1} R _inst_1) f)) (HahnSeries.coeff.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) f n)
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))} {n : Nat}, Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : PowerSeries.{u1} R) => R) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (a : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => PowerSeries.{u1} R) a) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))))))) (HahnSeries.toPowerSeries.{u1} R _inst_1) f)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : PowerSeries.{u1} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => PowerSeries.{u1} R) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))))))) (HahnSeries.toPowerSeries.{u1} R _inst_1) f)) (HahnSeries.coeff.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) f n)
Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_power_series HahnSeries.coeff_toPowerSeriesₓ'. -/
theorem coeff_toPowerSeries {f : HahnSeries ℕ R} {n : ℕ} :
PowerSeries.coeff R n f.toPowerSeries = f.coeff n :=
@@ -1686,7 +1686,7 @@ theorem coeff_toPowerSeries {f : HahnSeries ℕ R} {n : ℕ} :
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : PowerSeries.{u1} R} {n : Nat}, Eq.{succ u1} R (HahnSeries.coeff.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{succ u1, succ u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (fun (_x : RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) => (PowerSeries.{u1} R) -> (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.hasCoeToFun.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.symm.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.toPowerSeries.{u1} R _inst_1)) f) n) (coeFn.{succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (PowerSeries.{u1} R) -> R) (LinearMap.hasCoeToFun.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) f)
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : PowerSeries.{u1} R} {n : Nat}, Eq.{succ u1} R (HahnSeries.coeff.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))))) (RingEquiv.symm.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.toPowerSeries.{u1} R _inst_1)) f) n) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : PowerSeries.{u1} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) f)
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : PowerSeries.{u1} R} {n : Nat}, Eq.{succ u1} R (HahnSeries.coeff.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))))) (RingEquiv.symm.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.toPowerSeries.{u1} R _inst_1)) f) n) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : PowerSeries.{u1} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) f)
Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_power_series_symm HahnSeries.coeff_toPowerSeries_symmₓ'. -/
theorem coeff_toPowerSeries_symm {f : PowerSeries R} {n : ℕ} :
(HahnSeries.toPowerSeries.symm f).coeff n = PowerSeries.coeff R n f :=
@@ -1742,7 +1742,7 @@ theorem ofPowerSeries_apply (x : PowerSeries R) :
lean 3 declaration is
forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (x : PowerSeries.{u2} R) (n : Nat), Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) x) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) n)) (coeFn.{succ u2, succ u2} (LinearMap.{u2, u2, u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) R (PowerSeries.addCommMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.module.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) R (PowerSeries.addCommMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.module.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1)) => (PowerSeries.{u2} R) -> R) (LinearMap.hasCoeToFun.{u2, u2, u2, u2} R R (PowerSeries.{u2} R) R _inst_1 _inst_1 (PowerSeries.addCommMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.module.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.coeff.{u2} R _inst_1 n) x)
but is expected to have type
- forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (x : PowerSeries.{u2} R) (n : Nat), Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) x) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)) n)) (FunLike.coe.{succ u2, succ u2, succ u2} (LinearMap.{u2, u2, u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1)) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : PowerSeries.{u2} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u2, u2} R R (PowerSeries.{u2} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.coeff.{u2} R _inst_1 n) x)
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (x : PowerSeries.{u2} R) (n : Nat), Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) x) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)) n)) (FunLike.coe.{succ u2, succ u2, succ u2} (LinearMap.{u2, u2, u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1)) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : PowerSeries.{u2} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u2, u2} R R (PowerSeries.{u2} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.coeff.{u2} R _inst_1 n) x)
Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_apply_coeff HahnSeries.ofPowerSeries_apply_coeffₓ'. -/
theorem ofPowerSeries_apply_coeff (x : PowerSeries R) (n : ℕ) :
(ofPowerSeries Γ R x).coeff n = PowerSeries.coeff R n x := by simp
@@ -1790,14 +1790,14 @@ theorem ofPowerSeries_X : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
simp (config := { contextual := true }) [Ne.symm hn]
#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_X
-/- warning: hahn_series.of_power_series_X_pow -> HahnSeries.ofPowerSeries_x_pow is a dubious translation:
+/- warning: hahn_series.of_power_series_X_pow -> HahnSeries.ofPowerSeries_X_pow is a dubious translation:
lean 3 declaration is
forall {Γ : Type.{u1}} [_inst_2 : StrictOrderedSemiring.{u1} Γ] {R : Type.{u2}} [_inst_3 : CommSemiring.{u2} R] (n : Nat), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_3) _inst_2) (HPow.hPow.{u2, 0, u2} (PowerSeries.{u2} R) Nat (PowerSeries.{u2} R) (instHPow.{u2, 0} (PowerSeries.{u2} R) Nat (Monoid.Pow.{u2} (PowerSeries.{u2} R) (MonoidWithZero.toMonoid.{u2} (PowerSeries.{u2} R) (Semiring.toMonoidWithZero.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (PowerSeries.X.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)) n)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) n)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))))))
but is expected to have type
forall {Γ : Type.{u1}} [_inst_2 : StrictOrderedSemiring.{u1} Γ] {R : Type.{u2}} [_inst_3 : CommSemiring.{u2} R] (n : Nat), Eq.{max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HPow.hPow.{u2, 0, u2} (PowerSeries.{u2} R) Nat (PowerSeries.{u2} R) (instHPow.{u2, 0} (PowerSeries.{u2} R) Nat (Monoid.Pow.{u2} (PowerSeries.{u2} R) (MonoidWithZero.toMonoid.{u2} (PowerSeries.{u2} R) (Semiring.toMonoidWithZero.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (PowerSeries.X.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)) n)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_3) _inst_2) (HPow.hPow.{u2, 0, u2} (PowerSeries.{u2} R) Nat (PowerSeries.{u2} R) (instHPow.{u2, 0} (PowerSeries.{u2} R) Nat (Monoid.Pow.{u2} (PowerSeries.{u2} R) (MonoidWithZero.toMonoid.{u2} (PowerSeries.{u2} R) (Semiring.toMonoidWithZero.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (PowerSeries.X.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)) n)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) _x) (ZeroHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (ZeroHom.zeroHomClass.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (HahnSeries.single.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)) n)) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))
-Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_x_powₓ'. -/
+Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_powₓ'. -/
@[simp]
-theorem ofPowerSeries_x_pow {R} [CommSemiring R] (n : ℕ) :
+theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
ofPowerSeries Γ R (PowerSeries.X ^ n) = single (n : Γ) 1 :=
by
rw [RingHom.map_pow]
@@ -1805,7 +1805,7 @@ theorem ofPowerSeries_x_pow {R} [CommSemiring R] (n : ℕ) :
· simp
rfl
rw [pow_succ, ih, of_power_series_X, mul_comm, single_mul_single, one_mul, Nat.cast_succ]
-#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_x_pow
+#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_pow
/- warning: hahn_series.to_mv_power_series -> HahnSeries.toMvPowerSeries is a dubious translation:
lean 3 declaration is
@@ -1853,7 +1853,7 @@ variable {σ : Type _} [Fintype σ]
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))} {n : Finsupp.{u2, 0} σ Nat Nat.hasZero}, Eq.{succ u1} R (coeFn.{max (succ (max u2 u1)) (succ u1), max (succ (max u2 u1)) (succ u1)} (LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (MvPowerSeries.{u2, u1} σ R) -> R) (LinearMap.hasCoeToFun.{u1, u1, max u2 u1, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (RingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1)))))) (fun (_x : RingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1)))))) => (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) -> (MvPowerSeries.{u2, u1} σ R)) (RingEquiv.hasCoeToFun.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1)))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3) f)) (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) f n)
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))} {n : Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)}, Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : MvPowerSeries.{u2, u1} σ R) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (a : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => MvPowerSeries.{u2, u1} σ R) a) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3) f)) (FunLike.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2), succ u1} (LinearMap.{u1, u1, max u1 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : MvPowerSeries.{u2, u1} σ R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u1 u2, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => MvPowerSeries.{u2, u1} σ R) _x) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3) f)) (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) f n)
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))} {n : Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)}, Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : MvPowerSeries.{u2, u1} σ R) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (a : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => MvPowerSeries.{u2, u1} σ R) a) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3) f)) (FunLike.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2), succ u1} (LinearMap.{u1, u1, max u1 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : MvPowerSeries.{u2, u1} σ R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u1 u2, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => MvPowerSeries.{u2, u1} σ R) _x) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3) f)) (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) f n)
Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_mv_power_series HahnSeries.coeff_toMvPowerSeriesₓ'. -/
theorem coeff_toMvPowerSeries {f : HahnSeries (σ →₀ ℕ) R} {n : σ →₀ ℕ} :
MvPowerSeries.coeff R n f.toMvPowerSeries = f.coeff n :=
@@ -1864,7 +1864,7 @@ theorem coeff_toMvPowerSeries {f : HahnSeries (σ →₀ ℕ) R} {n : σ →₀
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : MvPowerSeries.{u2, u1} σ R} {n : Finsupp.{u2, 0} σ Nat Nat.hasZero}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (fun (_x : RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) => (MvPowerSeries.{u2, u1} σ R) -> (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.hasCoeToFun.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.symm.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3)) f) n) (coeFn.{max (succ (max u2 u1)) (succ u1), max (succ (max u2 u1)) (succ u1)} (LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (MvPowerSeries.{u2, u1} σ R) -> R) (LinearMap.hasCoeToFun.{u1, u1, max u2 u1, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) f)
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : MvPowerSeries.{u2, u1} σ R} {n : Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : MvPowerSeries.{u2, u1} σ R) => HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))))) (RingEquiv.symm.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3)) f) n) (FunLike.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2), succ u1} (LinearMap.{u1, u1, max u1 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : MvPowerSeries.{u2, u1} σ R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u1 u2, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) f)
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : MvPowerSeries.{u2, u1} σ R} {n : Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : MvPowerSeries.{u2, u1} σ R) => HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))))) (RingEquiv.symm.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3)) f) n) (FunLike.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2), succ u1} (LinearMap.{u1, u1, max u1 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : MvPowerSeries.{u2, u1} σ R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u1 u2, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) f)
Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_mv_power_series_symm HahnSeries.coeff_toMvPowerSeries_symmₓ'. -/
theorem coeff_toMvPowerSeries_symm {f : MvPowerSeries σ R} {n : σ →₀ ℕ} :
(HahnSeries.toMvPowerSeries.symm f).coeff n = MvPowerSeries.coeff R n f :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/75e7fca56381d056096ce5d05e938f63a6567828
@@ -60,6 +60,7 @@ open BigOperators Classical Pointwise Polynomial
noncomputable section
+#print HahnSeries /-
/-- If `Γ` is linearly ordered and `R` has zero, then `hahn_series Γ R` consists of
formal series over `Γ` with coefficients in `R`, whose supports are well-founded. -/
@[ext]
@@ -67,6 +68,7 @@ structure HahnSeries (Γ : Type _) (R : Type _) [PartialOrder Γ] [Zero R] where
coeff : Γ → R
isPwo_support' : (support coeff).IsPwo
#align hahn_series HahnSeries
+-/
variable {Γ : Type _} {R : Type _}
@@ -76,31 +78,63 @@ section Zero
variable [PartialOrder Γ] [Zero R]
+/- warning: hahn_series.coeff_injective -> HahnSeries.coeff_injective is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R], Function.Injective.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R], Function.Injective.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2)
+Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_injective HahnSeries.coeff_injectiveₓ'. -/
theorem coeff_injective : Injective (coeff : HahnSeries Γ R → Γ → R) :=
ext
#align hahn_series.coeff_injective HahnSeries.coeff_injective
+/- warning: hahn_series.coeff_inj -> HahnSeries.coeff_inj is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {y : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, Iff (Eq.{max (succ u1) (succ u2)} (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 y)) (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x y)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2} {y : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2}, Iff (Eq.{max (succ u2) (succ u1)} (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 y)) (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x y)
+Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_inj HahnSeries.coeff_injₓ'. -/
@[simp]
theorem coeff_inj {x y : HahnSeries Γ R} : x.coeff = y.coeff ↔ x = y :=
coeff_injective.eq_iff
#align hahn_series.coeff_inj HahnSeries.coeff_inj
+#print HahnSeries.support /-
/-- The support of a Hahn series is just the set of indices whose coefficients are nonzero.
Notably, it is well-founded. -/
def support (x : HahnSeries Γ R) : Set Γ :=
support x.coeff
#align hahn_series.support HahnSeries.support
+-/
+/- warning: hahn_series.is_pwo_support -> HahnSeries.isPwo_support is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] (x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2), Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] (x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2), Set.IsPwo.{u2} Γ (PartialOrder.toPreorder.{u2} Γ _inst_1) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x)
+Case conversion may be inaccurate. Consider using '#align hahn_series.is_pwo_support HahnSeries.isPwo_supportₓ'. -/
@[simp]
theorem isPwo_support (x : HahnSeries Γ R) : x.support.IsPwo :=
x.isPwo_support'
#align hahn_series.is_pwo_support HahnSeries.isPwo_support
+/- warning: hahn_series.is_wf_support -> HahnSeries.isWf_support is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] (x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2), Set.IsWf.{u1} Γ (Preorder.toHasLt.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] (x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2), Set.IsWf.{u2} Γ (Preorder.toLT.{u2} Γ (PartialOrder.toPreorder.{u2} Γ _inst_1)) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x)
+Case conversion may be inaccurate. Consider using '#align hahn_series.is_wf_support HahnSeries.isWf_supportₓ'. -/
@[simp]
theorem isWf_support (x : HahnSeries Γ R) : x.support.IsWf :=
x.isPwo_support.IsWf
#align hahn_series.is_wf_support HahnSeries.isWf_support
+/- warning: hahn_series.mem_support -> HahnSeries.mem_support is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] (x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (a : Γ), Iff (Membership.Mem.{u1, u1} Γ (Set.{u1} Γ) (Set.hasMem.{u1} Γ) a (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)) (Ne.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x a) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] (x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (a : Γ), Iff (Membership.mem.{u2, u2} Γ (Set.{u2} Γ) (Set.instMembershipSet.{u2} Γ) a (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x)) (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x a) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.mem_support HahnSeries.mem_supportₓ'. -/
@[simp]
theorem mem_support (x : HahnSeries Γ R) (a : Γ) : a ∈ x.support ↔ x.coeff a ≠ 0 :=
Iff.refl _
@@ -116,35 +150,68 @@ instance : Inhabited (HahnSeries Γ R) :=
instance [Subsingleton R] : Subsingleton (HahnSeries Γ R) :=
⟨fun a b => a.ext b (Subsingleton.elim _ _)⟩
+#print HahnSeries.zero_coeff /-
@[simp]
theorem zero_coeff {a : Γ} : (0 : HahnSeries Γ R).coeff a = 0 :=
rfl
#align hahn_series.zero_coeff HahnSeries.zero_coeff
+-/
+/- warning: hahn_series.coeff_fun_eq_zero_iff -> HahnSeries.coeff_fun_eq_zero_iff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, Iff (Eq.{max (succ u1) (succ u2)} (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x) (OfNat.ofNat.{max u1 u2} (Γ -> R) 0 (OfNat.mk.{max u1 u2} (Γ -> R) 0 (Zero.zero.{max u1 u2} (Γ -> R) (Pi.instZero.{u1, u2} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => _inst_2)))))) (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2}, Iff (Eq.{max (succ u2) (succ u1)} (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x) (OfNat.ofNat.{max u2 u1} (Γ -> R) 0 (Zero.toOfNat0.{max u2 u1} (Γ -> R) (Pi.instZero.{u2, u1} Γ (fun (a._@.Mathlib.RingTheory.HahnSeries._hyg.17 : Γ) => R) (fun (i : Γ) => _inst_2))))) (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_fun_eq_zero_iff HahnSeries.coeff_fun_eq_zero_iffₓ'. -/
@[simp]
theorem coeff_fun_eq_zero_iff {x : HahnSeries Γ R} : x.coeff = 0 ↔ x = 0 :=
coeff_injective.eq_iff' rfl
#align hahn_series.coeff_fun_eq_zero_iff HahnSeries.coeff_fun_eq_zero_iff
+/- warning: hahn_series.ne_zero_of_coeff_ne_zero -> HahnSeries.ne_zero_of_coeff_ne_zero is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {g : Γ}, (Ne.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x g) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2)))) -> (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2} {g : Γ}, (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x g) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) -> (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.ne_zero_of_coeff_ne_zero HahnSeries.ne_zero_of_coeff_ne_zeroₓ'. -/
theorem ne_zero_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g ≠ 0) : x ≠ 0 :=
mt (fun x0 => (x0.symm ▸ zero_coeff : x.coeff g = 0)) h
#align hahn_series.ne_zero_of_coeff_ne_zero HahnSeries.ne_zero_of_coeff_ne_zero
+/- warning: hahn_series.support_zero -> HahnSeries.support_zero is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R], Eq.{succ u1} (Set.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) (EmptyCollection.emptyCollection.{u1} (Set.{u1} Γ) (Set.hasEmptyc.{u1} Γ))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R], Eq.{succ u2} (Set.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))) (EmptyCollection.emptyCollection.{u2} (Set.{u2} Γ) (Set.instEmptyCollectionSet.{u2} Γ))
+Case conversion may be inaccurate. Consider using '#align hahn_series.support_zero HahnSeries.support_zeroₓ'. -/
@[simp]
theorem support_zero : support (0 : HahnSeries Γ R) = ∅ :=
Function.support_zero
#align hahn_series.support_zero HahnSeries.support_zero
+/- warning: hahn_series.support_nonempty_iff -> HahnSeries.support_nonempty_iff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, Iff (Set.Nonempty.{u1} Γ (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)) (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2}, Iff (Set.Nonempty.{u2} Γ (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x)) (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.support_nonempty_iff HahnSeries.support_nonempty_iffₓ'. -/
@[simp]
theorem support_nonempty_iff {x : HahnSeries Γ R} : x.support.Nonempty ↔ x ≠ 0 := by
rw [support, support_nonempty_iff, Ne.def, coeff_fun_eq_zero_iff]
#align hahn_series.support_nonempty_iff HahnSeries.support_nonempty_iff
+/- warning: hahn_series.support_eq_empty_iff -> HahnSeries.support_eq_empty_iff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, Iff (Eq.{succ u1} (Set.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x) (EmptyCollection.emptyCollection.{u1} (Set.{u1} Γ) (Set.hasEmptyc.{u1} Γ))) (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2}, Iff (Eq.{succ u2} (Set.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x) (EmptyCollection.emptyCollection.{u2} (Set.{u2} Γ) (Set.instEmptyCollectionSet.{u2} Γ))) (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.support_eq_empty_iff HahnSeries.support_eq_empty_iffₓ'. -/
@[simp]
theorem support_eq_empty_iff {x : HahnSeries Γ R} : x.support = ∅ ↔ x = 0 :=
support_eq_empty_iff.trans coeff_fun_eq_zero_iff
#align hahn_series.support_eq_empty_iff HahnSeries.support_eq_empty_iff
+#print HahnSeries.single /-
/-- `single a r` is the Hahn series which has coefficient `r` at `a` and zero otherwise. -/
def single (a : Γ) : ZeroHom R (HahnSeries Γ R)
where
@@ -153,49 +220,90 @@ def single (a : Γ) : ZeroHom R (HahnSeries Γ R)
isPwo_support' := (Set.isPwo_singleton a).mono Pi.support_single_subset }
map_zero' := ext _ _ (Pi.single_zero _)
#align hahn_series.single HahnSeries.single
+-/
variable {a b : Γ} {r : R}
+#print HahnSeries.single_coeff_same /-
@[simp]
theorem single_coeff_same (a : Γ) (r : R) : (single a r).coeff a = r :=
Pi.single_eq_same a r
#align hahn_series.single_coeff_same HahnSeries.single_coeff_same
+-/
+/- warning: hahn_series.single_coeff_of_ne -> HahnSeries.single_coeff_of_ne is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {a : Γ} {b : Γ} {r : R}, (Ne.{succ u1} Γ b a) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 a) r) b) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {a : Γ} {b : Γ} {r : R}, (Ne.{succ u2} Γ b a) -> (Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u2, u1} Γ R _inst_1 _inst_2 a) r) b) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.single_coeff_of_ne HahnSeries.single_coeff_of_neₓ'. -/
@[simp]
theorem single_coeff_of_ne (h : b ≠ a) : (single a r).coeff b = 0 :=
Pi.single_eq_of_ne h r
#align hahn_series.single_coeff_of_ne HahnSeries.single_coeff_of_ne
+#print HahnSeries.single_coeff /-
theorem single_coeff : (single a r).coeff b = if b = a then r else 0 := by
split_ifs with h <;> simp [h]
#align hahn_series.single_coeff HahnSeries.single_coeff
+-/
+#print HahnSeries.support_single_of_ne /-
@[simp]
theorem support_single_of_ne (h : r ≠ 0) : support (single a r) = {a} :=
Pi.support_single_of_ne h
#align hahn_series.support_single_of_ne HahnSeries.support_single_of_ne
+-/
+/- warning: hahn_series.support_single_subset -> HahnSeries.support_single_subset is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {a : Γ} {r : R}, HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 a) r)) (Singleton.singleton.{u1, u1} Γ (Set.{u1} Γ) (Set.hasSingleton.{u1} Γ) a)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {a : Γ} {r : R}, HasSubset.Subset.{u2} (Set.{u2} Γ) (Set.instHasSubsetSet.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u2, u1} Γ R _inst_1 _inst_2 a) r)) (Singleton.singleton.{u2, u2} Γ (Set.{u2} Γ) (Set.instSingletonSet.{u2} Γ) a)
+Case conversion may be inaccurate. Consider using '#align hahn_series.support_single_subset HahnSeries.support_single_subsetₓ'. -/
theorem support_single_subset : support (single a r) ⊆ {a} :=
Pi.support_single_subset
#align hahn_series.support_single_subset HahnSeries.support_single_subset
+/- warning: hahn_series.eq_of_mem_support_single -> HahnSeries.eq_of_mem_support_single is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {a : Γ} {r : R} {b : Γ}, (Membership.Mem.{u1, u1} Γ (Set.{u1} Γ) (Set.hasMem.{u1} Γ) b (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 a) r))) -> (Eq.{succ u1} Γ b a)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {a : Γ} {r : R} {b : Γ}, (Membership.mem.{u2, u2} Γ (Set.{u2} Γ) (Set.instMembershipSet.{u2} Γ) b (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u2, u1} Γ R _inst_1 _inst_2 a) r))) -> (Eq.{succ u2} Γ b a)
+Case conversion may be inaccurate. Consider using '#align hahn_series.eq_of_mem_support_single HahnSeries.eq_of_mem_support_singleₓ'. -/
theorem eq_of_mem_support_single {b : Γ} (h : b ∈ support (single a r)) : b = a :=
support_single_subset h
#align hahn_series.eq_of_mem_support_single HahnSeries.eq_of_mem_support_single
+/- warning: hahn_series.single_eq_zero -> HahnSeries.single_eq_zero is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {a : Γ}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 a) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2)))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {a : Γ}, Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u2, u1} Γ R _inst_1 _inst_2 a) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) 0 (Zero.toOfNat0.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.single_eq_zero HahnSeries.single_eq_zeroₓ'. -/
@[simp]
theorem single_eq_zero : single a (0 : R) = 0 :=
(single a).map_zero
#align hahn_series.single_eq_zero HahnSeries.single_eq_zero
+#print HahnSeries.single_injective /-
theorem single_injective (a : Γ) : Function.Injective (single a : R → HahnSeries Γ R) :=
fun r s rs => by rw [← single_coeff_same a r, ← single_coeff_same a s, rs]
#align hahn_series.single_injective HahnSeries.single_injective
+-/
+#print HahnSeries.single_ne_zero /-
theorem single_ne_zero (h : r ≠ 0) : single a r ≠ 0 := fun con =>
h (single_injective a (Con.trans single_eq_zero.symm))
#align hahn_series.single_ne_zero HahnSeries.single_ne_zero
+-/
+/- warning: hahn_series.single_eq_zero_iff -> HahnSeries.single_eq_zero_iff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {a : Γ} {r : R}, Iff (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 a) r) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) (Eq.{succ u2} R r (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] {a : Γ} {r : R}, Iff (Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u2, u1} Γ R _inst_1 _inst_2 a) r) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) r) 0 (Zero.toOfNat0.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) r) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))) (Eq.{succ u1} R r (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.single_eq_zero_iff HahnSeries.single_eq_zero_iffₓ'. -/
@[simp]
theorem single_eq_zero_iff {a : Γ} {r : R} : single a r = 0 ↔ r = 0 :=
by
@@ -216,41 +324,75 @@ section Order
variable [Zero Γ]
+#print HahnSeries.order /-
/-- The order of a nonzero Hahn series `x` is a minimal element of `Γ` where `x` has a
nonzero coefficient, the order of 0 is 0. -/
def order (x : HahnSeries Γ R) : Γ :=
if h : x = 0 then 0 else x.isWf_support.min (support_nonempty_iff.2 h)
#align hahn_series.order HahnSeries.order
+-/
+/- warning: hahn_series.order_zero -> HahnSeries.order_zero is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : Zero.{u1} Γ], Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ _inst_3)))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] [_inst_3 : Zero.{u2} Γ], Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))) (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ _inst_3))
+Case conversion may be inaccurate. Consider using '#align hahn_series.order_zero HahnSeries.order_zeroₓ'. -/
@[simp]
theorem order_zero : order (0 : HahnSeries Γ R) = 0 :=
dif_pos rfl
#align hahn_series.order_zero HahnSeries.order_zero
+/- warning: hahn_series.order_of_ne -> HahnSeries.order_of_ne is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : Zero.{u1} Γ] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} (hx : Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))), Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x) (Set.IsWf.min.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x) (HahnSeries.isWf_support.{u1, u2} Γ R _inst_1 _inst_2 x) (Iff.mpr (Set.Nonempty.{u1} Γ (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)) (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) (HahnSeries.support_nonempty_iff.{u1, u2} Γ R _inst_1 _inst_2 x) hx))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] [_inst_3 : Zero.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2} (hx : Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))), Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x) (Set.IsWf.min.{u2} Γ (PartialOrder.toPreorder.{u2} Γ _inst_1) (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x) (HahnSeries.isWf_support.{u1, u2} Γ R _inst_1 _inst_2 x) (Iff.mpr (Set.Nonempty.{u2} Γ (HahnSeries.support.{u2, u1} Γ R _inst_1 _inst_2 x)) (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))) (HahnSeries.support_nonempty_iff.{u1, u2} Γ R _inst_1 _inst_2 x) hx))
+Case conversion may be inaccurate. Consider using '#align hahn_series.order_of_ne HahnSeries.order_of_neₓ'. -/
theorem order_of_ne {x : HahnSeries Γ R} (hx : x ≠ 0) :
order x = x.isWf_support.min (support_nonempty_iff.2 hx) :=
dif_neg hx
#align hahn_series.order_of_ne HahnSeries.order_of_ne
+/- warning: hahn_series.coeff_order_ne_zero -> HahnSeries.coeff_order_ne_zero is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : Zero.{u1} Γ] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) -> (Ne.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x (HahnSeries.order.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x)) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] [_inst_3 : Zero.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2}, (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 _inst_2)))) -> (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x (HahnSeries.order.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x)) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_order_ne_zero HahnSeries.coeff_order_ne_zeroₓ'. -/
theorem coeff_order_ne_zero {x : HahnSeries Γ R} (hx : x ≠ 0) : x.coeff x.order ≠ 0 :=
by
rw [order_of_ne hx]
exact x.is_wf_support.min_mem (support_nonempty_iff.2 hx)
#align hahn_series.coeff_order_ne_zero HahnSeries.coeff_order_ne_zero
+/- warning: hahn_series.order_le_of_coeff_ne_zero -> HahnSeries.order_le_of_coeff_ne_zero is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_2 : Zero.{u1} R] {Γ : Type.{u2}} [_inst_4 : LinearOrderedCancelAddCommMonoid.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2} {g : Γ}, (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2 x g) (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R _inst_2)))) -> (LE.le.{u2} Γ (Preorder.toHasLe.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2 (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4))))))) x) g)
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_2 : Zero.{u1} R] {Γ : Type.{u2}} [_inst_4 : LinearOrderedCancelAddCommMonoid.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2} {g : Γ}, (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2 x g) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2))) -> (LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4)) _inst_2 (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_4))))) x) g)
+Case conversion may be inaccurate. Consider using '#align hahn_series.order_le_of_coeff_ne_zero HahnSeries.order_le_of_coeff_ne_zeroₓ'. -/
theorem order_le_of_coeff_ne_zero {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x : HahnSeries Γ R}
{g : Γ} (h : x.coeff g ≠ 0) : x.order ≤ g :=
le_trans (le_of_eq (order_of_ne (ne_zero_of_coeff_ne_zero h)))
(Set.IsWf.min_le _ _ ((mem_support _ _).2 h))
#align hahn_series.order_le_of_coeff_ne_zero HahnSeries.order_le_of_coeff_ne_zero
+#print HahnSeries.order_single /-
@[simp]
theorem order_single (h : r ≠ 0) : (single a r).order = a :=
(order_of_ne (single_ne_zero h)).trans
(support_single_subset
((single a r).isWf_support.min_mem (support_nonempty_iff.2 (single_ne_zero h))))
#align hahn_series.order_single HahnSeries.order_single
+-/
+/- warning: hahn_series.coeff_eq_zero_of_lt_order -> HahnSeries.coeff_eq_zero_of_lt_order is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : Zero.{u1} Γ] {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {i : Γ}, (LT.lt.{u1} Γ (Preorder.toHasLt.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) i (HahnSeries.order.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x)) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x i) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : Zero.{u1} R] [_inst_3 : Zero.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R _inst_1 _inst_2} {i : Γ}, (LT.lt.{u2} Γ (Preorder.toLT.{u2} Γ (PartialOrder.toPreorder.{u2} Γ _inst_1)) i (HahnSeries.order.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x)) -> (Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 _inst_2 x i) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_eq_zero_of_lt_order HahnSeries.coeff_eq_zero_of_lt_orderₓ'. -/
theorem coeff_eq_zero_of_lt_order {x : HahnSeries Γ R} {i : Γ} (hi : i < x.order) : x.coeff i = 0 :=
by
rcases eq_or_ne x 0 with (rfl | hx)
@@ -267,6 +409,12 @@ section Domain
variable {Γ' : Type _} [PartialOrder Γ']
+/- warning: hahn_series.emb_domain -> HahnSeries.embDomain is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'], (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) -> (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2)
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'], (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toLE.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) -> (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2)
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain HahnSeries.embDomainₓ'. -/
/-- Extends the domain of a `hahn_series` by an `order_embedding`. -/
def embDomain (f : Γ ↪o Γ') : HahnSeries Γ R → HahnSeries Γ' R := fun x =>
{ coeff := fun b : Γ' => if h : b ∈ f '' x.support then x.coeff (Classical.choose h) else 0
@@ -277,6 +425,12 @@ def embDomain (f : Γ ↪o Γ') : HahnSeries Γ R → HahnSeries Γ' R := fun x
rw [Function.mem_support, dif_neg hb, Classical.not_not] }
#align hahn_series.emb_domain HahnSeries.embDomain
+/- warning: hahn_series.emb_domain_coeff -> HahnSeries.embDomain_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))} {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u3, u2} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) f a)) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x a)
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))} {x : HahnSeries.{u3, u1} Γ R _inst_1 _inst_2} {a : Γ}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f a)) (HahnSeries.coeff.{u3, u1} Γ R _inst_1 _inst_2 x a)
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_coeff HahnSeries.embDomain_coeffₓ'. -/
@[simp]
theorem embDomain_coeff {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {a : Γ} :
(embDomain f x).coeff (f a) = x.coeff a :=
@@ -292,6 +446,12 @@ theorem embDomain_coeff {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {a : Γ} :
rwa [f.injective hb2] at hb1
#align hahn_series.emb_domain_coeff HahnSeries.embDomain_coeff
+/- warning: hahn_series.emb_domain_mk_coeff -> HahnSeries.embDomain_mk_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : Γ -> Γ'} (hfi : Function.Injective.{succ u1, succ u3} Γ Γ' f) (hf : forall (g : Γ) (g' : Γ), Iff (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)) (f g) (f g')) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) g g')) {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u3, u2} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 (RelEmbedding.mk.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (Function.Embedding.mk.{succ u1, succ u3} Γ Γ' f hfi) hf) x) (f a)) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 _inst_2 x a)
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : Γ -> Γ'} (hfi : Function.Injective.{succ u3, succ u2} Γ Γ' f) (hf : forall (g : Γ) (g' : Γ), Iff (LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) (f g) (f g')) (LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) g g')) {x : HahnSeries.{u3, u1} Γ R _inst_1 _inst_2} {a : Γ}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 (RelEmbedding.mk.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (Function.Embedding.mk.{succ u3, succ u2} Γ Γ' f hfi) (fun {a._@.Mathlib.RingTheory.HahnSeries._hyg.1996 : Γ} {b._@.Mathlib.RingTheory.HahnSeries._hyg.1997 : Γ} => hf a._@.Mathlib.RingTheory.HahnSeries._hyg.1996 b._@.Mathlib.RingTheory.HahnSeries._hyg.1997)) x) (f a)) (HahnSeries.coeff.{u3, u1} Γ R _inst_1 _inst_2 x a)
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_mk_coeff HahnSeries.embDomain_mk_coeffₓ'. -/
@[simp]
theorem embDomain_mk_coeff {f : Γ → Γ'} (hfi : Function.Injective f)
(hf : ∀ g g' : Γ, f g ≤ f g' ↔ g ≤ g') {x : HahnSeries Γ R} {a : Γ} :
@@ -299,11 +459,23 @@ theorem embDomain_mk_coeff {f : Γ → Γ'} (hfi : Function.Injective f)
embDomain_coeff
#align hahn_series.emb_domain_mk_coeff HahnSeries.embDomain_mk_coeff
+/- warning: hahn_series.emb_domain_notin_image_support -> HahnSeries.embDomain_notin_image_support is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))} {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {b : Γ'}, (Not (Membership.Mem.{u3, u3} Γ' (Set.{u3} Γ') (Set.hasMem.{u3} Γ') b (Set.image.{u1, u3} Γ Γ' (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) f) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x)))) -> (Eq.{succ u2} R (HahnSeries.coeff.{u3, u2} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) b) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))} {x : HahnSeries.{u3, u1} Γ R _inst_1 _inst_2} {b : Γ'}, (Not (Membership.mem.{u2, u2} Γ' (Set.{u2} Γ') (Set.instMembershipSet.{u2} Γ') b (Set.image.{u3, u2} Γ Γ' (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f) (HahnSeries.support.{u3, u1} Γ R _inst_1 _inst_2 x)))) -> (Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) b) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_notin_image_support HahnSeries.embDomain_notin_image_supportₓ'. -/
theorem embDomain_notin_image_support {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {b : Γ'}
(hb : b ∉ f '' x.support) : (embDomain f x).coeff b = 0 :=
dif_neg hb
#align hahn_series.emb_domain_notin_image_support HahnSeries.embDomain_notin_image_support
+/- warning: hahn_series.support_emb_domain_subset -> HahnSeries.support_embDomain_subset is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))} {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2}, HasSubset.Subset.{u3} (Set.{u3} Γ') (Set.hasSubset.{u3} Γ') (HahnSeries.support.{u3, u2} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f x)) (Set.image.{u1, u3} Γ Γ' (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) f) (HahnSeries.support.{u1, u2} Γ R _inst_1 _inst_2 x))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))} {x : HahnSeries.{u3, u1} Γ R _inst_1 _inst_2}, HasSubset.Subset.{u2} (Set.{u2} Γ') (Set.instHasSubsetSet.{u2} Γ') (HahnSeries.support.{u2, u1} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f x)) (Set.image.{u3, u2} Γ Γ' (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f) (HahnSeries.support.{u3, u1} Γ R _inst_1 _inst_2 x))
+Case conversion may be inaccurate. Consider using '#align hahn_series.support_emb_domain_subset HahnSeries.support_embDomain_subsetₓ'. -/
theorem support_embDomain_subset {f : Γ ↪o Γ'} {x : HahnSeries Γ R} :
support (embDomain f x) ⊆ f '' x.support :=
by
@@ -312,11 +484,23 @@ theorem support_embDomain_subset {f : Γ ↪o Γ'} {x : HahnSeries Γ R} :
rw [mem_support, emb_domain_notin_image_support hg, Classical.not_not]
#align hahn_series.support_emb_domain_subset HahnSeries.support_embDomain_subset
+/- warning: hahn_series.emb_domain_notin_range -> HahnSeries.embDomain_notin_range is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))} {x : HahnSeries.{u1, u2} Γ R _inst_1 _inst_2} {b : Γ'}, (Not (Membership.Mem.{u3, u3} Γ' (Set.{u3} Γ') (Set.hasMem.{u3} Γ') b (Set.range.{u3, succ u1} Γ' Γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) f)))) -> (Eq.{succ u2} R (HahnSeries.coeff.{u3, u2} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) b) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))} {x : HahnSeries.{u3, u1} Γ R _inst_1 _inst_2} {b : Γ'}, (Not (Membership.mem.{u2, u2} Γ' (Set.{u2} Γ') (Set.instMembershipSet.{u2} Γ') b (Set.range.{u2, succ u3} Γ' Γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f)))) -> (Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ' R _inst_3 _inst_2 (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f x) b) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_notin_range HahnSeries.embDomain_notin_rangeₓ'. -/
theorem embDomain_notin_range {f : Γ ↪o Γ'} {x : HahnSeries Γ R} {b : Γ'} (hb : b ∉ Set.range f) :
(embDomain f x).coeff b = 0 :=
embDomain_notin_image_support fun con => hb (Set.image_subset_range _ _ Con)
#align hahn_series.emb_domain_notin_range HahnSeries.embDomain_notin_range
+/- warning: hahn_series.emb_domain_zero -> HahnSeries.embDomain_zero is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2))))) (OfNat.ofNat.{max u3 u2} (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) 0 (OfNat.mk.{max u3 u2} (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) 0 (Zero.zero.{max u3 u2} (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) (HahnSeries.hasZero.{u3, u2} Γ' R _inst_3 _inst_2))))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f (OfNat.ofNat.{max u3 u1} (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) 0 (Zero.toOfNat0.{max u3 u1} (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) (HahnSeries.instZeroHahnSeries.{u3, u1} Γ R _inst_1 _inst_2)))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) 0 (Zero.toOfNat0.{max u1 u2} (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ' R _inst_3 _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_zero HahnSeries.embDomain_zeroₓ'. -/
@[simp]
theorem embDomain_zero {f : Γ ↪o Γ'} : embDomain f (0 : HahnSeries Γ R) = 0 :=
by
@@ -324,6 +508,12 @@ theorem embDomain_zero {f : Γ ↪o Γ'} : embDomain f (0 : HahnSeries Γ R) = 0
simp [emb_domain_notin_image_support]
#align hahn_series.emb_domain_zero HahnSeries.embDomain_zero
+/- warning: hahn_series.emb_domain_single -> HahnSeries.embDomain_single is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))} {g : Γ} {r : R}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.single.{u1, u2} Γ R _inst_1 _inst_2 g) r)) (coeFn.{max (succ (max u3 u2)) (succ u2), max (succ u2) (succ (max u3 u2))} (ZeroHom.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) _inst_2 (HahnSeries.hasZero.{u3, u2} Γ' R _inst_3 _inst_2)) (fun (_x : ZeroHom.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) _inst_2 (HahnSeries.hasZero.{u3, u2} Γ' R _inst_3 _inst_2)) => R -> (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2)) (ZeroHom.hasCoeToFun.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) _inst_2 (HahnSeries.hasZero.{u3, u2} Γ' R _inst_3 _inst_2)) (HahnSeries.single.{u3, u2} Γ' R _inst_3 _inst_2 (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3)))) f g)) r)
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))} {g : Γ} {r : R}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f (FunLike.coe.{max (succ u3) (succ u1), succ u1, max (succ u3) (succ u1)} (ZeroHom.{u1, max u1 u3} R (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u3, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) _x) (ZeroHomClass.toFunLike.{max u3 u1, u1, max u3 u1} (ZeroHom.{u1, max u1 u3} R (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u3, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u3, u1} Γ R _inst_1 _inst_2) (ZeroHom.zeroHomClass.{u1, max u3 u1} R (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u3, u1} Γ R _inst_1 _inst_2))) (HahnSeries.single.{u3, u1} Γ R _inst_1 _inst_2 g) r)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2)) R (HahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2))) (HahnSeries.single.{u2, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') g) R _inst_3 _inst_2 (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u3, u2} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u3} Γ (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u2} Γ' (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3)) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f g)) r)
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_single HahnSeries.embDomain_singleₓ'. -/
@[simp]
theorem embDomain_single {f : Γ ↪o Γ'} {g : Γ} {r : R} :
embDomain f (single g r) = single (f g) r :=
@@ -337,6 +527,12 @@ theorem embDomain_single {f : Γ ↪o Γ'} {g : Γ} {r : R} :
rwa [support_single_of_ne hr, Set.image_singleton, Set.mem_singleton_iff]
#align hahn_series.emb_domain_single HahnSeries.embDomain_single
+/- warning: hahn_series.emb_domain_injective -> HahnSeries.embDomain_injective is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Zero.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] {f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))}, Function.Injective.{max (succ u1) (succ u2), max (succ u3) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.{u3, u2} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 _inst_2 Γ' _inst_3 f)
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Zero.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] {f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))}, Function.Injective.{max (succ u3) (succ u1), max (succ u1) (succ u2)} (HahnSeries.{u3, u1} Γ R _inst_1 _inst_2) (HahnSeries.{u2, u1} Γ' R _inst_3 _inst_2) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 _inst_2 Γ' _inst_3 f)
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_injective HahnSeries.embDomain_injectiveₓ'. -/
theorem embDomain_injective {f : Γ ↪o Γ'} :
Function.Injective (embDomain f : HahnSeries Γ R → HahnSeries Γ' R) := fun x y xy =>
by
@@ -376,15 +572,33 @@ instance : AddMonoid (HahnSeries Γ R) where
ext
apply add_zero
+/- warning: hahn_series.add_coeff' -> HahnSeries.add_coeff' is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))}, Eq.{max (succ u1) (succ u2)} (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Γ -> R) (Γ -> R) (Γ -> R) (instHAdd.{max u1 u2} (Γ -> R) (Pi.instAdd.{u1, u2} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => AddZeroClass.toHasAdd.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)))) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) x) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) y))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddMonoid.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)} {y : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)}, Eq.{max (succ u2) (succ u1)} (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Γ -> R) (Γ -> R) (Γ -> R) (instHAdd.{max u2 u1} (Γ -> R) (Pi.instAdd.{u2, u1} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => AddZeroClass.toAdd.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2)))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) x) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) y))
+Case conversion may be inaccurate. Consider using '#align hahn_series.add_coeff' HahnSeries.add_coeff'ₓ'. -/
@[simp]
theorem add_coeff' {x y : HahnSeries Γ R} : (x + y).coeff = x.coeff + y.coeff :=
rfl
#align hahn_series.add_coeff' HahnSeries.add_coeff'
+/- warning: hahn_series.add_coeff -> HahnSeries.add_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (HAdd.hAdd.{u2, u2, u2} R R R (instHAdd.{u2} R (AddZeroClass.toHasAdd.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) x a) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) y a))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddMonoid.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)} {y : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)} {a : Γ}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ R _inst_1 _inst_2)) x y) a) (HAdd.hAdd.{u1, u1, u1} R R R (instHAdd.{u1} R (AddZeroClass.toAdd.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) x a) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) y a))
+Case conversion may be inaccurate. Consider using '#align hahn_series.add_coeff HahnSeries.add_coeffₓ'. -/
theorem add_coeff {x y : HahnSeries Γ R} {a : Γ} : (x + y).coeff a = x.coeff a + y.coeff a :=
rfl
#align hahn_series.add_coeff HahnSeries.add_coeff
+/- warning: hahn_series.support_add_subset -> HahnSeries.support_add_subset is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))}, HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 _inst_2)) x y)) (Union.union.{u1} (Set.{u1} Γ) (Set.hasUnion.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) x) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) y))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddMonoid.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)} {y : HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)}, HasSubset.Subset.{u2} (Set.{u2} Γ) (Set.instHasSubsetSet.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ R _inst_1 _inst_2)) x y)) (Union.union.{u2} (Set.{u2} Γ) (Set.instUnionSet.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) x) (HahnSeries.support.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) y))
+Case conversion may be inaccurate. Consider using '#align hahn_series.support_add_subset HahnSeries.support_add_subsetₓ'. -/
theorem support_add_subset {x y : HahnSeries Γ R} : support (x + y) ⊆ support x ∪ support y :=
fun a ha => by
rw [mem_support, add_coeff] at ha
@@ -393,6 +607,12 @@ theorem support_add_subset {x y : HahnSeries Γ R} : support (x + y) ⊆ support
rw [ha.1, ha.2, add_zero]
#align hahn_series.support_add_subset HahnSeries.support_add_subset
+/- warning: hahn_series.min_order_le_order_add -> HahnSeries.min_order_le_order_add is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_2 : AddMonoid.{u1} R] {Γ : Type.{u2}} [_inst_3 : LinearOrderedCancelAddCommMonoid.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))} {y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))}, (Ne.{succ (max u2 u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (instHAdd.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.hasAdd.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) _inst_2)) x y) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) 0 (OfNat.mk.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) 0 (Zero.zero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.hasZero.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))))))) -> (LE.le.{u2} Γ (Preorder.toHasLe.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)))) (LinearOrder.min.{u2} Γ (LinearOrderedAddCommMonoid.toLinearOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_3)) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))))) y)) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))))) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (instHAdd.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_2))) (HahnSeries.hasAdd.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) _inst_2)) x y)))
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_2 : AddMonoid.{u1} R] {Γ : Type.{u2}} [_inst_3 : LinearOrderedCancelAddCommMonoid.{u2} Γ] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)} {y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)}, (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) _inst_2)) x y) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) 0 (Zero.toOfNat0.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2))))) -> (LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)))) (Min.min.{u2} Γ (LinearOrderedCancelAddCommMonoid.toMin.{u2} Γ _inst_3) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))) y)) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3))))) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_3)) _inst_2)) x y)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.min_order_le_order_add HahnSeries.min_order_le_order_addₓ'. -/
theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y : HahnSeries Γ R}
(hxy : x + y ≠ 0) : min x.order y.order ≤ (x + y).order :=
by
@@ -405,6 +625,12 @@ theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y :
rw [Set.IsWf.min_union]
#align hahn_series.min_order_le_order_add HahnSeries.min_order_le_order_add
+/- warning: hahn_series.single.add_monoid_hom -> HahnSeries.single.addMonoidHom is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R], Γ -> (AddMonoidHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (AddMonoid.toAddZeroClass.{u2} R _inst_2) (AddMonoid.toAddZeroClass.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.addMonoid.{u1, u2} Γ R _inst_1 _inst_2)))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R], Γ -> (AddMonoidHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R _inst_2)) (AddMonoid.toAddZeroClass.{u2} R _inst_2) (AddMonoid.toAddZeroClass.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R _inst_2)) (HahnSeries.instAddMonoidHahnSeriesToZero.{u1, u2} Γ R _inst_1 _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.single.add_monoid_hom HahnSeries.single.addMonoidHomₓ'. -/
/-- `single` as an additive monoid/group homomorphism -/
@[simps]
def single.addMonoidHom (a : Γ) : R →+ HahnSeries Γ R :=
@@ -414,6 +640,12 @@ def single.addMonoidHom (a : Γ) : R →+ HahnSeries Γ R :=
by_cases h : b = a <;> simp [h] }
#align hahn_series.single.add_monoid_hom HahnSeries.single.addMonoidHom
+/- warning: hahn_series.coeff.add_monoid_hom -> HahnSeries.coeff.addMonoidHom is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R], Γ -> (AddMonoidHom.{max u1 u2, u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) R (AddMonoid.toAddZeroClass.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.addMonoid.{u1, u2} Γ R _inst_1 _inst_2)) (AddMonoid.toAddZeroClass.{u2} R _inst_2))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R], Γ -> (AddMonoidHom.{max u2 u1, u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R _inst_2)) R (AddMonoid.toAddZeroClass.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R _inst_2)) (HahnSeries.instAddMonoidHahnSeriesToZero.{u1, u2} Γ R _inst_1 _inst_2)) (AddMonoid.toAddZeroClass.{u2} R _inst_2))
+Case conversion may be inaccurate. Consider using '#align hahn_series.coeff.add_monoid_hom HahnSeries.coeff.addMonoidHomₓ'. -/
/-- `coeff g` as an additive monoid/group homomorphism -/
@[simps]
def coeff.addMonoidHom (g : Γ) : HahnSeries Γ R →+ R
@@ -427,6 +659,12 @@ section Domain
variable {Γ' : Type _} [PartialOrder Γ']
+/- warning: hahn_series.emb_domain_add -> HahnSeries.embDomain_add is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddMonoid.{u2} R] {Γ' : Type.{u3}} [_inst_3 : PartialOrder.{u3} Γ'] (f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_3))) (x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))), Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R _inst_3 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) Γ' _inst_3 f (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ' R _inst_3 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ' R _inst_3 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ' R _inst_3 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (instHAdd.{max u3 u2} (HahnSeries.{u3, u2} Γ' R _inst_3 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2))) (HahnSeries.hasAdd.{u3, u2} Γ' R _inst_3 _inst_2)) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) Γ' _inst_3 f x) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R _inst_2)) Γ' _inst_3 f y))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddMonoid.{u1} R] {Γ' : Type.{u2}} [_inst_3 : PartialOrder.{u2} Γ'] (f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_3))) (x : HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (y : HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ' R _inst_3 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) Γ' _inst_3 f (HAdd.hAdd.{max u3 u1, max u3 u1, max u3 u1} (HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u3 u1} (HahnSeries.{u3, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u3, u1} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u2, u1} Γ' R _inst_3 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ' R _inst_3 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.{u2, u1} Γ' R _inst_3 (AddMonoid.toZero.{u1} R _inst_2)) (instHAdd.{max u1 u2} (HahnSeries.{u2, u1} Γ' R _inst_3 (AddMonoid.toZero.{u1} R _inst_2)) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} Γ' R _inst_3 _inst_2)) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) Γ' _inst_3 f x) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u1} R _inst_2) Γ' _inst_3 f y))
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_add HahnSeries.embDomain_addₓ'. -/
theorem embDomain_add (f : Γ ↪o Γ') (x y : HahnSeries Γ R) :
embDomain f (x + y) = embDomain f x + embDomain f y :=
by
@@ -463,15 +701,33 @@ instance : AddGroup (HahnSeries Γ R) :=
ext
apply add_left_neg }
+/- warning: hahn_series.neg_coeff' -> HahnSeries.neg_coeff' is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))}, Eq.{max (succ u1) (succ u2)} (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (Neg.neg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2))) x)) (Neg.neg.{max u1 u2} (Γ -> R) (Pi.instNeg.{u1, u2} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => SubNegMonoid.toHasNeg.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) x))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))}, Eq.{max (succ u2) (succ u1)} (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (Neg.neg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (NegZeroClass.toNeg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegZeroMonoid.toNegZeroClass.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubtractionMonoid.toSubNegZeroMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubtractionMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2))))) x)) (Neg.neg.{max u2 u1} (Γ -> R) (Pi.instNeg.{u2, u1} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => NegZeroClass.toNeg.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x))
+Case conversion may be inaccurate. Consider using '#align hahn_series.neg_coeff' HahnSeries.neg_coeff'ₓ'. -/
@[simp]
theorem neg_coeff' {x : HahnSeries Γ R} : (-x).coeff = -x.coeff :=
rfl
#align hahn_series.neg_coeff' HahnSeries.neg_coeff'
+/- warning: hahn_series.neg_coeff -> HahnSeries.neg_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (Neg.neg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2))) x) a) (Neg.neg.{u2} R (SubNegMonoid.toHasNeg.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) x a))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))} {a : Γ}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (Neg.neg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (NegZeroClass.toNeg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegZeroMonoid.toNegZeroClass.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubtractionMonoid.toSubNegZeroMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubtractionMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2))))) x) a) (Neg.neg.{u1} R (NegZeroClass.toNeg.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x a))
+Case conversion may be inaccurate. Consider using '#align hahn_series.neg_coeff HahnSeries.neg_coeffₓ'. -/
theorem neg_coeff {x : HahnSeries Γ R} {a : Γ} : (-x).coeff a = -x.coeff a :=
rfl
#align hahn_series.neg_coeff HahnSeries.neg_coeff
+/- warning: hahn_series.support_neg -> HahnSeries.support_neg is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))}, Eq.{succ u1} (Set.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (Neg.neg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2))) x)) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) x)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))}, Eq.{succ u2} (Set.{u2} Γ) (HahnSeries.support.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (Neg.neg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (NegZeroClass.toNeg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegZeroMonoid.toNegZeroClass.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubtractionMonoid.toSubNegZeroMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubtractionMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2))))) x)) (HahnSeries.support.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x)
+Case conversion may be inaccurate. Consider using '#align hahn_series.support_neg HahnSeries.support_negₓ'. -/
@[simp]
theorem support_neg {x : HahnSeries Γ R} : (-x).support = x.support :=
by
@@ -479,6 +735,12 @@ theorem support_neg {x : HahnSeries Γ R} : (-x).support = x.support :=
simp
#align hahn_series.support_neg HahnSeries.support_neg
+/- warning: hahn_series.sub_coeff' -> HahnSeries.sub_coeff' is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))} {y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))}, Eq.{max (succ u1) (succ u2)} (Γ -> R) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (instHSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2)))) x y)) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (Γ -> R) (Γ -> R) (Γ -> R) (instHSub.{max u1 u2} (Γ -> R) (Pi.instSub.{u1, u2} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => SubNegMonoid.toHasSub.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) x) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) y))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))} {y : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))}, Eq.{max (succ u2) (succ u1)} (Γ -> R) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (instHSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegMonoid.toSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2)))) x y)) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} (Γ -> R) (Γ -> R) (Γ -> R) (instHSub.{max u2 u1} (Γ -> R) (Pi.instSub.{u2, u1} Γ (fun (ᾰ : Γ) => R) (fun (i : Γ) => SubNegMonoid.toSub.{u1} R (AddGroup.toSubNegMonoid.{u1} R _inst_2)))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) y))
+Case conversion may be inaccurate. Consider using '#align hahn_series.sub_coeff' HahnSeries.sub_coeff'ₓ'. -/
@[simp]
theorem sub_coeff' {x y : HahnSeries Γ R} : (x - y).coeff = x.coeff - y.coeff :=
by
@@ -486,10 +748,22 @@ theorem sub_coeff' {x y : HahnSeries Γ R} : (x - y).coeff = x.coeff - y.coeff :
simp [sub_eq_add_neg]
#align hahn_series.sub_coeff' HahnSeries.sub_coeff'
+/- warning: hahn_series.sub_coeff -> HahnSeries.sub_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] {x : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))} {y : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (instHSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2)))) x y) a) (HSub.hSub.{u2, u2, u2} R R R (instHSub.{u2} R (SubNegMonoid.toHasSub.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) x a) (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) y a))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] {x : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))} {y : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))} {a : Γ}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (instHSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegMonoid.toSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2)))) x y) a) (HSub.hSub.{u1, u1, u1} R R R (instHSub.{u1} R (SubNegMonoid.toSub.{u1} R (AddGroup.toSubNegMonoid.{u1} R _inst_2))) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) x a) (HahnSeries.coeff.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) y a))
+Case conversion may be inaccurate. Consider using '#align hahn_series.sub_coeff HahnSeries.sub_coeffₓ'. -/
theorem sub_coeff {x y : HahnSeries Γ R} {a : Γ} : (x - y).coeff a = x.coeff a - y.coeff a := by
simp
#align hahn_series.sub_coeff HahnSeries.sub_coeff
+/- warning: hahn_series.order_neg -> HahnSeries.order_neg is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddGroup.{u2} R] [_inst_3 : Zero.{u1} Γ] {f : HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))}, Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) _inst_3 (Neg.neg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 _inst_2))) f)) (HahnSeries.order.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (SubNegMonoid.toAddMonoid.{u2} R (AddGroup.toSubNegMonoid.{u2} R _inst_2)))) _inst_3 f)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddGroup.{u1} R] [_inst_3 : Zero.{u2} Γ] {f : HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))}, Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) _inst_3 (Neg.neg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (NegZeroClass.toNeg.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubNegZeroMonoid.toNegZeroClass.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (SubtractionMonoid.toSubNegZeroMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (AddGroup.toSubtractionMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2))))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u2, u1} Γ R _inst_1 _inst_2))))) f)) (HahnSeries.order.{u2, u1} Γ R _inst_1 (NegZeroClass.toZero.{u1} R (SubNegZeroMonoid.toNegZeroClass.{u1} R (SubtractionMonoid.toSubNegZeroMonoid.{u1} R (AddGroup.toSubtractionMonoid.{u1} R _inst_2)))) _inst_3 f)
+Case conversion may be inaccurate. Consider using '#align hahn_series.order_neg HahnSeries.order_negₓ'. -/
@[simp]
theorem order_neg [Zero Γ] {f : HahnSeries Γ R} : (-f).order = f.order :=
by
@@ -514,6 +788,12 @@ instance : SMul R (HahnSeries Γ V) :=
{ coeff := r • x.coeff
isPwo_support' := x.isPwo_support.mono (Function.support_smul_subset_right r x.coeff) }⟩
+/- warning: hahn_series.smul_coeff -> HahnSeries.smul_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] {V : Type.{u3}} [_inst_2 : Monoid.{u2} R] [_inst_3 : AddMonoid.{u3} V] [_inst_4 : DistribMulAction.{u2, u3} R V _inst_2 _inst_3] {r : R} {x : HahnSeries.{u1, u3} Γ V _inst_1 (AddZeroClass.toHasZero.{u3} V (AddMonoid.toAddZeroClass.{u3} V _inst_3))} {a : Γ}, Eq.{succ u3} V (HahnSeries.coeff.{u1, u3} Γ V _inst_1 (AddZeroClass.toHasZero.{u3} V (AddMonoid.toAddZeroClass.{u3} V _inst_3)) (SMul.smul.{u2, max u1 u3} R (HahnSeries.{u1, u3} Γ V _inst_1 (AddZeroClass.toHasZero.{u3} V (AddMonoid.toAddZeroClass.{u3} V _inst_3))) (HahnSeries.hasSmul.{u1, u2, u3} Γ R _inst_1 V _inst_2 _inst_3 _inst_4) r x) a) (SMul.smul.{u2, u3} R V (SMulZeroClass.toHasSmul.{u2, u3} R V (AddZeroClass.toHasZero.{u3} V (AddMonoid.toAddZeroClass.{u3} V _inst_3)) (DistribSMul.toSmulZeroClass.{u2, u3} R V (AddMonoid.toAddZeroClass.{u3} V _inst_3) (DistribMulAction.toDistribSMul.{u2, u3} R V _inst_2 _inst_3 _inst_4))) r (HahnSeries.coeff.{u1, u3} Γ V _inst_1 (AddZeroClass.toHasZero.{u3} V (AddMonoid.toAddZeroClass.{u3} V _inst_3)) x a))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] {V : Type.{u2}} [_inst_2 : Monoid.{u1} R] [_inst_3 : AddMonoid.{u2} V] [_inst_4 : DistribMulAction.{u1, u2} R V _inst_2 _inst_3] {r : R} {x : HahnSeries.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3)} {a : Γ}, Eq.{succ u2} V (HahnSeries.coeff.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3) (HSMul.hSMul.{u1, max u3 u2, max u3 u2} R (HahnSeries.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3)) (HahnSeries.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3)) (instHSMul.{u1, max u3 u2} R (HahnSeries.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3)) (HahnSeries.instSMulHahnSeriesToZero.{u3, u1, u2} Γ R _inst_1 V _inst_2 _inst_3 _inst_4)) r x) a) (HSMul.hSMul.{u1, u2, u2} R V V (instHSMul.{u1, u2} R V (SMulZeroClass.toSMul.{u1, u2} R V (AddMonoid.toZero.{u2} V _inst_3) (DistribSMul.toSMulZeroClass.{u1, u2} R V (AddMonoid.toAddZeroClass.{u2} V _inst_3) (DistribMulAction.toDistribSMul.{u1, u2} R V _inst_2 _inst_3 _inst_4)))) r (HahnSeries.coeff.{u3, u2} Γ V _inst_1 (AddMonoid.toZero.{u2} V _inst_3) x a))
+Case conversion may be inaccurate. Consider using '#align hahn_series.smul_coeff HahnSeries.smul_coeffₓ'. -/
@[simp]
theorem smul_coeff {r : R} {x : HahnSeries Γ V} {a : Γ} : (r • x).coeff a = r • x.coeff a :=
rfl
@@ -563,6 +843,12 @@ instance : Module R (HahnSeries Γ V) :=
ext
simp [add_smul] }
+/- warning: hahn_series.single.linear_map -> HahnSeries.single.linearMap is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R], Γ -> (LinearMap.{u2, u2, u2, max u1 u2} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) R (HahnSeries.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.addCommMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Semiring.toModule.{u2} R _inst_2) (HahnSeries.module.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R], Γ -> (LinearMap.{u2, u2, u2, max u2 u1} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) R (HahnSeries.{u1, u2} Γ R _inst_1 (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Semiring.toModule.{u2} R _inst_2) (HahnSeries.instModuleHahnSeriesToZeroToAddMonoidInstAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.single.linear_map HahnSeries.single.linearMapₓ'. -/
/-- `single` as a linear map -/
@[simps]
def single.linearMap (a : Γ) : R →ₗ[R] HahnSeries Γ R :=
@@ -572,6 +858,12 @@ def single.linearMap (a : Γ) : R →ₗ[R] HahnSeries Γ R :=
by_cases h : b = a <;> simp [h] }
#align hahn_series.single.linear_map HahnSeries.single.linearMap
+/- warning: hahn_series.coeff.linear_map -> HahnSeries.coeff.linearMap is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R], Γ -> (LinearMap.{u2, u2, max u1 u2, u2} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) (HahnSeries.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) R (HahnSeries.addCommMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.module.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)) (Semiring.toModule.{u2} R _inst_2))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R], Γ -> (LinearMap.{u2, u2, max u2 u1, u2} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) (HahnSeries.{u1, u2} Γ R _inst_1 (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) R (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.instModuleHahnSeriesToZeroToAddMonoidInstAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)) (Semiring.toModule.{u2} R _inst_2))
+Case conversion may be inaccurate. Consider using '#align hahn_series.coeff.linear_map HahnSeries.coeff.linearMapₓ'. -/
/-- `coeff g` as a linear map -/
@[simps]
def coeff.linearMap (g : Γ) : HahnSeries Γ R →ₗ[R] R :=
@@ -582,6 +874,12 @@ section Domain
variable {Γ' : Type _} [PartialOrder Γ']
+/- warning: hahn_series.emb_domain_smul -> HahnSeries.embDomain_smul is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R] {Γ' : Type.{u3}} [_inst_5 : PartialOrder.{u3} Γ'] (f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_5))) (r : R) (x : HahnSeries.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))), Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R _inst_5 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) Γ' _inst_5 f (SMul.smul.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasSmul.{u1, u2, u2} Γ R _inst_1 R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Module.toDistribMulAction.{u2, u2} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2))) r x)) (SMul.smul.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R _inst_5 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasSmul.{u3, u2, u2} Γ' R _inst_5 R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Module.toDistribMulAction.{u2, u2} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2))) r (HahnSeries.embDomain.{u1, u2, u3} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) Γ' _inst_5 f x))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : Semiring.{u1} R] {Γ' : Type.{u2}} [_inst_5 : PartialOrder.{u2} Γ'] (f : OrderEmbedding.{u3, u2} Γ Γ' (Preorder.toLE.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1)) (Preorder.toLE.{u2} Γ' (PartialOrder.toPreorder.{u2} Γ' _inst_5))) (r : R) (x : HahnSeries.{u3, u1} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ' R _inst_5 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2)) Γ' _inst_5 f (HSMul.hSMul.{u1, max u3 u1, max u3 u1} R (HahnSeries.{u3, u1} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.{u3, u1} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (instHSMul.{u1, max u3 u1} R (HahnSeries.{u3, u1} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.instSMulHahnSeriesToZero.{u3, u1, u1} Γ R _inst_1 R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Module.toDistribMulAction.{u1, u1} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2))) (Semiring.toModule.{u1} R _inst_2)))) r x)) (HSMul.hSMul.{u1, max u2 u1, max u1 u2} R (HahnSeries.{u2, u1} Γ' R _inst_5 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ' R _inst_5 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (instHSMul.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ' R _inst_5 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.instSMulHahnSeriesToZero.{u2, u1, u1} Γ' R _inst_5 R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Module.toDistribMulAction.{u1, u1} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2))) (Semiring.toModule.{u1} R _inst_2)))) r (HahnSeries.embDomain.{u3, u1, u2} Γ R _inst_1 (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2)) Γ' _inst_5 f x))
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_smul HahnSeries.embDomain_smulₓ'. -/
theorem embDomain_smul (f : Γ ↪o Γ') (r : R) (x : HahnSeries Γ R) :
embDomain f (r • x) = r • embDomain f x := by
ext g
@@ -591,6 +889,12 @@ theorem embDomain_smul (f : Γ ↪o Γ') (r : R) (x : HahnSeries Γ R) :
· simp [emb_domain_notin_range, hg]
#align hahn_series.emb_domain_smul HahnSeries.embDomain_smul
+/- warning: hahn_series.emb_domain_linear_map -> HahnSeries.embDomainLinearMap is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R] {Γ' : Type.{u3}} [_inst_5 : PartialOrder.{u3} Γ'], (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_5))) -> (LinearMap.{u2, u2, max u1 u2, max u3 u2} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) (HahnSeries.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u3, u2} Γ' R _inst_5 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.addCommMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.addCommMonoid.{u3, u2} Γ' R _inst_5 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.module.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)) (HahnSeries.module.{u3, u2, u2} Γ' R _inst_5 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : Semiring.{u2} R] {Γ' : Type.{u3}} [_inst_5 : PartialOrder.{u3} Γ'], (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1)) (Preorder.toLE.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' _inst_5))) -> (LinearMap.{u2, u2, max u2 u1, max u2 u3} R R _inst_2 _inst_2 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)) (HahnSeries.{u1, u2} Γ R _inst_1 (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ' R _inst_5 (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2} Γ R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u3, u2} Γ' R _inst_5 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.instModuleHahnSeriesToZeroToAddMonoidInstAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2, u2} Γ R _inst_1 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)) (HahnSeries.instModuleHahnSeriesToZeroToAddMonoidInstAddCommMonoidHahnSeriesToZeroToAddMonoid.{u3, u2, u2} Γ' R _inst_5 _inst_2 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_linear_map HahnSeries.embDomainLinearMapₓ'. -/
/-- Extending the domain of Hahn series is a linear map. -/
@[simps]
def embDomainLinearMap (f : Γ ↪o Γ') : HahnSeries Γ R →ₗ[R] HahnSeries Γ' R
@@ -611,22 +915,46 @@ variable [OrderedCancelAddCommMonoid Γ]
instance [Zero R] [One R] : One (HahnSeries Γ R) :=
⟨single 0 1⟩
+/- warning: hahn_series.one_coeff -> HahnSeries.one_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : One.{u2} R] {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2 (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2) (HahnSeries.hasOne.{u1, u2} Γ R _inst_1 _inst_2 _inst_3)))) a) (ite.{succ u2} R (Eq.{succ u1} Γ a (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))) (Classical.propDecidable (Eq.{succ u1} Γ a (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R _inst_3))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R _inst_2))))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Zero.{u2} R] [_inst_3 : One.{u2} R] {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2 (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2) 1 (One.toOfNat1.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) _inst_2) (HahnSeries.instOneHahnSeriesToPartialOrder.{u1, u2} Γ R _inst_1 _inst_2 _inst_3))) a) (ite.{succ u2} R (Eq.{succ u1} Γ a (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) (Classical.propDecidable (Eq.{succ u1} Γ a (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R _inst_3)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.one_coeff HahnSeries.one_coeffₓ'. -/
@[simp]
theorem one_coeff [Zero R] [One R] {a : Γ} :
(1 : HahnSeries Γ R).coeff a = if a = 0 then 1 else 0 :=
single_coeff
#align hahn_series.one_coeff HahnSeries.one_coeff
+/- warning: hahn_series.single_zero_one -> HahnSeries.single_zero_one is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_2 : Zero.{u1} R] [_inst_3 : One.{u1} R], Eq.{succ u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) (coeFn.{succ u1, succ u1} (ZeroHom.{u1, u1} R (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) _inst_2 (HahnSeries.hasZero.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2)) (fun (_x : ZeroHom.{u1, u1} R (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) _inst_2 (HahnSeries.hasZero.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2)) => R -> (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2)) (ZeroHom.hasCoeToFun.{u1, u1} R (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) _inst_2 (HahnSeries.hasZero.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2)) (HahnSeries.single.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2 (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R _inst_3)))) (OfNat.ofNat.{u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) 1 (OfNat.mk.{u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) 1 (One.one.{u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) _inst_2) (HahnSeries.hasOne.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_2 _inst_3))))
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_2 : Zero.{u1} R] [_inst_3 : One.{u1} R], Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R _inst_3))) (FunLike.coe.{succ u1, succ u1, succ u1} (ZeroHom.{u1, u1} R (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) _x) (ZeroHomClass.toFunLike.{u1, u1, u1} (ZeroHom.{u1, u1} R (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2)) R (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) (ZeroHom.zeroHomClass.{u1, u1} R (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) _inst_2 (HahnSeries.instZeroHahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2))) (HahnSeries.single.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2 (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R _inst_3))) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R _inst_3))) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) _inst_2) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R _inst_3))) (HahnSeries.instOneHahnSeriesToPartialOrder.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_2 _inst_3)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.single_zero_one HahnSeries.single_zero_oneₓ'. -/
@[simp]
theorem single_zero_one [Zero R] [One R] : single 0 (1 : R) = 1 :=
rfl
#align hahn_series.single_zero_one HahnSeries.single_zero_one
+/- warning: hahn_series.support_one -> HahnSeries.support_one is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : MulZeroOneClass.{u2} R] [_inst_3 : Nontrivial.{u2} R], Eq.{succ u1} (Set.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2)) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasOne.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2)) (MulOneClass.toHasOne.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R _inst_2))))))) (Singleton.singleton.{u1, u1} Γ (Set.{u1} Γ) (Set.hasSingleton.{u1} Γ) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))))))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : MulZeroOneClass.{u2} R] [_inst_3 : Nontrivial.{u2} R], Eq.{succ u1} (Set.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2)) 1 (One.toOfNat1.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2)) (HahnSeries.instOneHahnSeriesToPartialOrder.{u1, u2} Γ R _inst_1 (MulZeroOneClass.toZero.{u2} R _inst_2) (MulOneClass.toOne.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R _inst_2)))))) (Singleton.singleton.{u1, u1} Γ (Set.{u1} Γ) (Set.instSingletonSet.{u1} Γ) (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.support_one HahnSeries.support_oneₓ'. -/
@[simp]
theorem support_one [MulZeroOneClass R] [Nontrivial R] : support (1 : HahnSeries Γ R) = {0} :=
support_single_of_ne one_ne_zero
#align hahn_series.support_one HahnSeries.support_one
+/- warning: hahn_series.order_one -> HahnSeries.order_one is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : MulZeroOneClass.{u2} R], Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasOne.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R _inst_2)) (MulOneClass.toHasOne.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R _inst_2))))))) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : MulZeroOneClass.{u2} R], Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2) (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2)) 1 (One.toOfNat1.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R _inst_2)) (HahnSeries.instOneHahnSeriesToPartialOrder.{u1, u2} Γ R _inst_1 (MulZeroOneClass.toZero.{u2} R _inst_2) (MulOneClass.toOne.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R _inst_2)))))) (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.order_one HahnSeries.order_oneₓ'. -/
@[simp]
theorem order_one [MulZeroOneClass R] : order (1 : HahnSeries Γ R) = 0 :=
by
@@ -652,6 +980,12 @@ instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R)
simp [not_nonempty_iff_eq_empty.1 ha]
is_pwo_support_add_antidiagonal.mono h }
+/- warning: hahn_series.mul_coeff -> HahnSeries.mul_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) (HahnSeries.isPwo_support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.isPwo_support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij))))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) (HahnSeries.isPwo_support.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.isPwo_support.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.mul_coeff HahnSeries.mul_coeffₓ'. -/
@[simp]
theorem mul_coeff [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} :
(x * y).coeff a =
@@ -659,6 +993,12 @@ theorem mul_coeff [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ}
rfl
#align hahn_series.mul_coeff HahnSeries.mul_coeff
+/- warning: hahn_series.mul_coeff_right' -> HahnSeries.mul_coeff_right' is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {s : Set.{u1} Γ} (hs : Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)) s), (HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) s) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) s (HahnSeries.isPwo_support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) hs a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij)))))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {s : Set.{u1} Γ} (hs : Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)) s), (HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.instHasSubsetSet.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) s) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) s (HahnSeries.isPwo_support.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) hs a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij)))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.mul_coeff_right' HahnSeries.mul_coeff_right'ₓ'. -/
theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
(hs : s.IsPwo) (hys : y.support ⊆ s) :
(x * y).coeff a =
@@ -671,6 +1011,12 @@ theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {
rw [hb.2 hb.1.1 hb.1.2.2, MulZeroClass.mul_zero]
#align hahn_series.mul_coeff_right' HahnSeries.mul_coeff_right'
+/- warning: hahn_series.mul_coeff_left' -> HahnSeries.mul_coeff_left' is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {s : Set.{u1} Γ} (hs : Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)) s), (HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) s) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 s (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) hs (HahnSeries.isPwo_support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij)))))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {s : Set.{u1} Γ} (hs : Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)) s), (HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.instHasSubsetSet.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) s) -> (Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x y) a) (Finset.sum.{u2, u1} R (Prod.{u1, u1} Γ Γ) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R _inst_2) (Finset.addAntidiagonal.{u1} Γ _inst_1 s (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) hs (HahnSeries.isPwo_support.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y) a) (fun (ij : Prod.{u1, u1} Γ Γ) => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x (Prod.fst.{u1, u1} Γ Γ ij)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y (Prod.snd.{u1, u1} Γ Γ ij)))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.mul_coeff_left' HahnSeries.mul_coeff_left'ₓ'. -/
theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
(hs : s.IsPwo) (hxs : x.support ⊆ s) :
(x * y).coeff a =
@@ -709,6 +1055,12 @@ instance [NonUnitalNonAssocSemiring R] : Distrib (HahnSeries Γ R) :=
intro h
rw [h.1, h.2, add_zero] }
+/- warning: hahn_series.single_mul_coeff_add -> HahnSeries.single_mul_coeff_add is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {b : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) b) r) x) (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toHasAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) a b)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) r (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {b : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (ZeroHom.zeroHomClass.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) b) r) x) (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) a b)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) r (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a))
+Case conversion may be inaccurate. Consider using '#align hahn_series.single_mul_coeff_add HahnSeries.single_mul_coeff_addₓ'. -/
theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ}
{b : Γ} : (single b r * x).coeff (a + b) = r * x.coeff a :=
by
@@ -739,6 +1091,12 @@ theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
· simp
#align hahn_series.single_mul_coeff_add HahnSeries.single_mul_coeff_add
+/- warning: hahn_series.mul_single_coeff_add -> HahnSeries.mul_single_coeff_add is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {b : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) b) r)) (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toHasAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) a b)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a) r)
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ} {b : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (ZeroHom.zeroHomClass.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) b) r)) (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) a b)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a) r)
+Case conversion may be inaccurate. Consider using '#align hahn_series.mul_single_coeff_add HahnSeries.mul_single_coeff_addₓ'. -/
theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ}
{b : Γ} : (x * single b r).coeff (a + b) = x.coeff a * r :=
by
@@ -767,15 +1125,33 @@ theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
· simp
#align hahn_series.mul_single_coeff_add HahnSeries.mul_single_coeff_add
+/- warning: hahn_series.mul_single_zero_coeff -> HahnSeries.mul_single_zero_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))) r)) a) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a) r)
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u2 u1, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (ZeroHom.zeroHomClass.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) r)) a) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a) r)
+Case conversion may be inaccurate. Consider using '#align hahn_series.mul_single_zero_coeff HahnSeries.mul_single_zero_coeffₓ'. -/
@[simp]
theorem mul_single_zero_coeff [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ} :
(x * single 0 r).coeff a = x.coeff a * r := by rw [← add_zero a, mul_single_coeff_add, add_zero]
#align hahn_series.mul_single_zero_coeff HahnSeries.mul_single_zero_coeff
+/- warning: hahn_series.single_zero_mul_coeff -> HahnSeries.single_zero_mul_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))) r) x) a) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) r (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {a : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (ZeroHom.zeroHomClass.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) r) x) a) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (NonUnitalNonAssocSemiring.toMul.{u2} R _inst_2)) r (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x a))
+Case conversion may be inaccurate. Consider using '#align hahn_series.single_zero_mul_coeff HahnSeries.single_zero_mul_coeffₓ'. -/
theorem single_zero_mul_coeff [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ} :
(single 0 r * x).coeff a = r * x.coeff a := by rw [← add_zero a, single_mul_coeff_add, add_zero]
#align hahn_series.single_zero_mul_coeff HahnSeries.single_zero_mul_coeff
+/- warning: hahn_series.single_zero_mul_eq_smul -> HahnSeries.single_zero_mul_eq_smul is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))}, Eq.{succ (max u1 u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))) r) x) (SMul.smul.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasSmul.{u1, u2, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Module.toDistribMulAction.{u2, u2} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2))) r x)
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HMul.hMul.{max u2 u1, max u1 u2, max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) r) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)))) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (ZeroHom.zeroHomClass.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (OfNat.ofNat.{u1} Γ 0 (Zero.toOfNat0.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) r) x) (HSMul.hSMul.{u2, max u1 u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (instHSMul.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instSMulHahnSeriesToZero.{u1, u2, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Module.toDistribMulAction.{u2, u2} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2)))) r x)
+Case conversion may be inaccurate. Consider using '#align hahn_series.single_zero_mul_eq_smul HahnSeries.single_zero_mul_eq_smulₓ'. -/
@[simp]
theorem single_zero_mul_eq_smul [Semiring R] {r : R} {x : HahnSeries Γ R} :
single 0 r * x = r • x := by
@@ -783,6 +1159,12 @@ theorem single_zero_mul_eq_smul [Semiring R] {r : R} {x : HahnSeries Γ R} :
exact single_zero_mul_coeff
#align hahn_series.single_zero_mul_eq_smul HahnSeries.single_zero_mul_eq_smul
+/- warning: hahn_series.support_mul_subset_add_support -> HahnSeries.support_mul_subset_add_support is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))}, HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{u1, u1, u1} (Set.{u1} Γ) (Set.{u1} Γ) (Set.{u1} Γ) (instHAdd.{u1} (Set.{u1} Γ) (Set.add.{u1} Γ (AddZeroClass.toHasAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))} {y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))}, HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.instHasSubsetSet.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u2} Γ R _inst_1 _inst_2)) x y)) (HAdd.hAdd.{u1, u1, u1} (Set.{u1} Γ) (Set.{u1} Γ) (Set.{u1} Γ) (instHAdd.{u1} (Set.{u1} Γ) (Set.add.{u1} Γ (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) x) (HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) y))
+Case conversion may be inaccurate. Consider using '#align hahn_series.support_mul_subset_add_support HahnSeries.support_mul_subset_add_supportₓ'. -/
theorem support_mul_subset_add_support [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} :
support (x * y) ⊆ support x + support y :=
by
@@ -794,6 +1176,12 @@ theorem support_mul_subset_add_support [NonUnitalNonAssocSemiring R] {x y : Hahn
simp [hx]
#align hahn_series.support_mul_subset_add_support HahnSeries.support_mul_subset_add_support
+/- warning: hahn_series.mul_coeff_order_add_order -> HahnSeries.mul_coeff_order_add_order is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : NonUnitalNonAssocSemiring.{u1} R] (x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))), Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (instHMul.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.hasMul.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3)) x y) (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toHasAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) y))) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R _inst_3))) (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) x (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) x)) (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) y (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) y)))
+but is expected to have type
+ forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : NonUnitalNonAssocSemiring.{u1} R] (x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))), Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (instHMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3)) x y) (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) y))) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (NonUnitalNonAssocSemiring.toMul.{u1} R _inst_3)) (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) x (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) x)) (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) y (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) y)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.mul_coeff_order_add_order HahnSeries.mul_coeff_order_add_orderₓ'. -/
theorem mul_coeff_order_add_order {Γ} [LinearOrderedCancelAddCommMonoid Γ]
[NonUnitalNonAssocSemiring R] (x y : HahnSeries Γ R) :
(x * y).coeff (x.order + y.order) = x.coeff x.order * y.coeff y.order :=
@@ -923,6 +1311,12 @@ instance {Γ} [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R] :
IsDomain (HahnSeries Γ R) :=
NoZeroDivisors.to_isDomain _
+/- warning: hahn_series.order_mul -> HahnSeries.order_mul is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : NonUnitalNonAssocSemiring.{u1} R] [_inst_4 : NoZeroDivisors.{u1} R (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R _inst_3)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))} {y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))}, (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (OfNat.mk.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (Zero.zero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.hasZero.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))))))) -> (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) y (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (OfNat.mk.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (Zero.zero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.hasZero.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))))))) -> (Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (instHMul.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.hasMul.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3)) x y)) (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toHasAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) y)))
+but is expected to have type
+ forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : NonUnitalNonAssocSemiring.{u1} R] [_inst_4 : NoZeroDivisors.{u1} R (NonUnitalNonAssocSemiring.toMul.{u1} R _inst_3) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))} {y : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))}, (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (Zero.toOfNat0.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)))))) -> (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) y (OfNat.ofNat.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) 0 (Zero.toOfNat0.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)))))) -> (Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (instHMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3)) x y)) (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) x) (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) y)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.order_mul HahnSeries.order_mulₓ'. -/
@[simp]
theorem order_mul {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocSemiring R]
[NoZeroDivisors R] {x y : HahnSeries Γ R} (hx : x ≠ 0) (hy : y ≠ 0) :
@@ -935,6 +1329,12 @@ theorem order_mul {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocS
exact Set.IsWf.min_le_min_of_subset support_mul_subset_add_support
#align hahn_series.order_mul HahnSeries.order_mul
+/- warning: hahn_series.order_pow -> HahnSeries.order_pow is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : Semiring.{u1} R] [_inst_4 : NoZeroDivisors.{u1} R (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3)))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))] (x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) (n : Nat), Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3)))) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) (HPow.hPow.{max u2 u1, 0, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) Nat (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) (instHPow.{max u2 u1, 0} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) Nat (Monoid.Pow.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) (MonoidWithZero.toMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) (Semiring.toMonoidWithZero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))))) (HahnSeries.semiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3))))) x n)) (SMul.smul.{0, u2} Nat Γ (AddMonoid.SMul.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)))))) n (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3)))) (AddZeroClass.toHasZero.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) x))
+but is expected to have type
+ forall {R : Type.{u1}} {Γ : Type.{u2}} [_inst_2 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_3 : Semiring.{u1} R] [_inst_4 : NoZeroDivisors.{u1} R (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_3))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))] (x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) (n : Nat), Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) (HPow.hPow.{max u1 u2, 0, max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) Nat (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) (instHPow.{max u1 u2, 0} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) Nat (Monoid.Pow.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) (MonoidWithZero.toMonoid.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) (Semiring.toMonoidWithZero.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) _inst_3))))) x n)) (HSMul.hSMul.{0, u2, u2} Nat Γ Γ (instHSMul.{0, u2} Nat Γ (AddMonoid.SMul.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))))) n (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_3)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2))))) x))
+Case conversion may be inaccurate. Consider using '#align hahn_series.order_pow HahnSeries.order_powₓ'. -/
@[simp]
theorem order_pow {Γ} [LinearOrderedCancelAddCommMonoid Γ] [Semiring R] [NoZeroDivisors R]
(x : HahnSeries Γ R) (n : ℕ) : (x ^ n).order = n • x.order :=
@@ -950,6 +1350,12 @@ section NonUnitalNonAssocSemiring
variable [NonUnitalNonAssocSemiring R]
+/- warning: hahn_series.single_mul_single -> HahnSeries.single_mul_single is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u2} R] {a : Γ} {b : Γ} {r : R} {s : R}, Eq.{succ (max u1 u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_2)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) a) r) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) b) s)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_2)) (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toHasAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) a b)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R _inst_2))) r s))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : NonUnitalNonAssocSemiring.{u1} R] {a : Γ} {b : Γ} {r : R} {s : R}, Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) r) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) s) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R _inst_1 _inst_2)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))))) (HahnSeries.single.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) a) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))))) (HahnSeries.single.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) b) s)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2))))) (HahnSeries.single.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R _inst_2)) (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) a b)) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (NonUnitalNonAssocSemiring.toMul.{u1} R _inst_2)) r s))
+Case conversion may be inaccurate. Consider using '#align hahn_series.single_mul_single HahnSeries.single_mul_singleₓ'. -/
@[simp]
theorem single_mul_single {a b : Γ} {r s : R} : single a r * single b s = single (a + b) (r * s) :=
by
@@ -970,9 +1376,15 @@ section NonAssocSemiring
variable [NonAssocSemiring R]
+/- warning: hahn_series.C -> HahnSeries.C is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)
+Case conversion may be inaccurate. Consider using '#align hahn_series.C HahnSeries.Cₓ'. -/
/-- `C a` is the constant Hahn Series `a`. `C` is provided as a ring homomorphism. -/
@[simps]
-def c : R →+* HahnSeries Γ R where
+def C : R →+* HahnSeries Γ R where
toFun := single 0
map_zero' := single_eq_zero
map_one' := rfl
@@ -980,39 +1392,69 @@ def c : R →+* HahnSeries Γ R where
ext a
by_cases h : a = 0 <;> simp [h]
map_mul' x y := by rw [single_mul_single, zero_add]
-#align hahn_series.C HahnSeries.c
-
+#align hahn_series.C HahnSeries.C
+
+/- warning: hahn_series.C_zero -> HahnSeries.C_zero is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : NonAssocSemiring.{u1} R], Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2)) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))))) (HahnSeries.C.{u2, u1} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))))) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2)))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.C_zero HahnSeries.C_zeroₓ'. -/
@[simp]
-theorem c_zero : c (0 : R) = (0 : HahnSeries Γ R) :=
- c.map_zero
-#align hahn_series.C_zero HahnSeries.c_zero
-
+theorem C_zero : C (0 : R) = (0 : HahnSeries Γ R) :=
+ C.map_zero
+#align hahn_series.C_zero HahnSeries.C_zero
+
+/- warning: hahn_series.C_one -> HahnSeries.C_one is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R _inst_2))))))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasOne.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))) (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R _inst_2)))))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : NonAssocSemiring.{u1} R], Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (NonAssocSemiring.toOne.{u1} R _inst_2)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2)) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))))) (HahnSeries.C.{u2, u1} Γ R _inst_1 _inst_2) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (NonAssocSemiring.toOne.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) 1 (One.toOfNat1.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R _inst_1 (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2)) (NonAssocSemiring.toOne.{u1} R _inst_2))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.C_one HahnSeries.C_oneₓ'. -/
@[simp]
-theorem c_one : c (1 : R) = (1 : HahnSeries Γ R) :=
- c.map_one
-#align hahn_series.C_one HahnSeries.c_one
-
-theorem c_injective : Function.Injective (c : R → HahnSeries Γ R) :=
+theorem C_one : C (1 : R) = (1 : HahnSeries Γ R) :=
+ C.map_one
+#align hahn_series.C_one HahnSeries.C_one
+
+/- warning: hahn_series.C_injective -> HahnSeries.C_injective is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], Function.Injective.{succ u2, max (succ u1) (succ u2)} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R], Function.Injective.{succ u2, max (succ u1) (succ u2)} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _x) (MulHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2) (RingHom.instRingHomClassRingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2))))) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2))
+Case conversion may be inaccurate. Consider using '#align hahn_series.C_injective HahnSeries.C_injectiveₓ'. -/
+theorem C_injective : Function.Injective (C : R → HahnSeries Γ R) :=
by
intro r s rs
rw [ext_iff, Function.funext_iff] at rs
have h := rs 0
rwa [C_apply, single_coeff_same, C_apply, single_coeff_same] at h
-#align hahn_series.C_injective HahnSeries.c_injective
-
-theorem c_ne_zero {r : R} (h : r ≠ 0) : (c r : HahnSeries Γ R) ≠ 0 :=
+#align hahn_series.C_injective HahnSeries.C_injective
+
+/- warning: hahn_series.C_ne_zero -> HahnSeries.C_ne_zero is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R] {r : R}, (Ne.{succ u2} R r (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))))) -> (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2) r) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))))))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R] {r : R}, (Ne.{succ u2} R r (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))))) -> (Ne.{max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _x) (MulHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2)) R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2) (RingHom.instRingHomClassRingHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_2))))) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2) r) (OfNat.ofNat.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) r) 0 (Zero.toOfNat0.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))) r) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_2))))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.C_ne_zero HahnSeries.C_ne_zeroₓ'. -/
+theorem C_ne_zero {r : R} (h : r ≠ 0) : (C r : HahnSeries Γ R) ≠ 0 :=
by
contrapose! h
rw [← C_zero] at h
exact C_injective h
-#align hahn_series.C_ne_zero HahnSeries.c_ne_zero
-
-theorem order_c {r : R} : order (c r : HahnSeries Γ R) = 0 :=
+#align hahn_series.C_ne_zero HahnSeries.C_ne_zero
+
+/- warning: hahn_series.order_C -> HahnSeries.order_C is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : NonAssocSemiring.{u2} R] {r : R}, Eq.{succ u1} Γ (HahnSeries.order.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_2)))) _inst_2 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_2)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_2) r)) (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : NonAssocSemiring.{u1} R] {r : R}, Eq.{succ u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2)) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2)) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2)) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R _inst_2))) _inst_2 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 _inst_2))))) (HahnSeries.C.{u2, u1} Γ R _inst_1 _inst_2) r)) (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.order_C HahnSeries.order_Cₓ'. -/
+theorem order_C {r : R} : order (C r : HahnSeries Γ R) = 0 :=
by
by_cases h : r = 0
· rw [h, C_zero, order_zero]
· exact order_single h
-#align hahn_series.order_C HahnSeries.order_c
+#align hahn_series.order_C HahnSeries.order_C
end NonAssocSemiring
@@ -1020,9 +1462,15 @@ section Semiring
variable [Semiring R]
-theorem c_mul_eq_smul {r : R} {x : HahnSeries Γ R} : c r * x = r • x :=
+/- warning: hahn_series.C_mul_eq_smul -> HahnSeries.C_mul_eq_smul is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {r : R} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))}, Eq.{succ (max u1 u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (Semiring.toNonAssocSemiring.{u2} R _inst_2) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (Semiring.toNonAssocSemiring.{u2} R _inst_2) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R _inst_2))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (Semiring.toNonAssocSemiring.{u2} R _inst_2) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.C.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R _inst_2)) r) x) (SMul.smul.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.hasSmul.{u1, u2, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (Module.toDistribMulAction.{u2, u2} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (Semiring.toModule.{u2} R _inst_2))) r x)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : Semiring.{u1} R] {r : R} {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))}, Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2)) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Semiring.toNonAssocSemiring.{u1} R _inst_2) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2)))))) (HahnSeries.C.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R _inst_2)) r) x) (HSMul.hSMul.{u1, max u2 u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (instHSMul.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2))) (HahnSeries.instSMulHahnSeriesToZero.{u2, u1, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_2)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2)))) (Module.toDistribMulAction.{u1, u1} R R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_2))) (Semiring.toModule.{u1} R _inst_2)))) r x)
+Case conversion may be inaccurate. Consider using '#align hahn_series.C_mul_eq_smul HahnSeries.C_mul_eq_smulₓ'. -/
+theorem C_mul_eq_smul {r : R} {x : HahnSeries Γ R} : C r * x = r • x :=
single_zero_mul_eq_smul
-#align hahn_series.C_mul_eq_smul HahnSeries.c_mul_eq_smul
+#align hahn_series.C_mul_eq_smul HahnSeries.C_mul_eq_smul
end Semiring
@@ -1030,6 +1478,12 @@ section Domain
variable {Γ' : Type _} [OrderedCancelAddCommMonoid Γ']
+/- warning: hahn_series.emb_domain_mul -> HahnSeries.embDomain_mul is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {Γ' : Type.{u3}} [_inst_2 : OrderedCancelAddCommMonoid.{u3} Γ'] [_inst_3 : NonUnitalNonAssocSemiring.{u2} R] (f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))), (forall (x : Γ) (y : Γ), Eq.{succ u3} Γ' (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) f (HAdd.hAdd.{u1, u1, u1} Γ Γ Γ (instHAdd.{u1} Γ (AddZeroClass.toHasAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))))) x y)) (HAdd.hAdd.{u3, u3, u3} Γ' Γ' Γ' (instHAdd.{u3} Γ' (AddZeroClass.toHasAdd.{u3} Γ' (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2))))))) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) f x) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) f y))) -> (forall (x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (y : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))), Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.embDomain.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) f (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 _inst_3)) x y)) (HMul.hMul.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (instHMul.{max u3 u2} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3))) (HahnSeries.hasMul.{u3, u2} Γ' R _inst_2 _inst_3)) (HahnSeries.embDomain.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) f x) (HahnSeries.embDomain.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) f y)))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u3}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] {Γ' : Type.{u1}} [_inst_2 : OrderedCancelAddCommMonoid.{u1} Γ'] [_inst_3 : NonUnitalNonAssocSemiring.{u3} R] (f : OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))), (forall (x : Γ) (y : Γ), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) x y)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u2, u1} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f (HAdd.hAdd.{u2, u2, u2} Γ Γ Γ (instHAdd.{u2} Γ (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) x y)) (HAdd.hAdd.{u1, u1, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') y) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (instHAdd.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (AddZeroClass.toAdd.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (AddMonoid.toAddZeroClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (AddRightCancelMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (AddCancelMonoid.toAddRightCancelMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (AddCancelCommMonoid.toAddCancelMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') x) _inst_2))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u2, u1} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f x) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u2, u1} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f y))) -> (forall (x : HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (y : HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))), Eq.{max (succ u3) (succ u1)} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.embDomain.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) f (HMul.hMul.{max u2 u3, max u2 u3, max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (instHMul.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u3} Γ R _inst_1 _inst_3)) x y)) (HMul.hMul.{max u3 u1, max u3 u1, max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (instHMul.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u1, u3} Γ' R _inst_2 _inst_3)) (HahnSeries.embDomain.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) f x) (HahnSeries.embDomain.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroClass.toZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) f y)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_mul HahnSeries.embDomain_mulₓ'. -/
theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
(hf : ∀ x y, f (x + y) = f x + f y) (x y : HahnSeries Γ R) :
embDomain f (x * y) = embDomain f x * embDomain f y :=
@@ -1067,11 +1521,23 @@ theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
refine' ⟨i + j, hf i j⟩
#align hahn_series.emb_domain_mul HahnSeries.embDomain_mul
+/- warning: hahn_series.emb_domain_one -> HahnSeries.embDomain_one is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {Γ' : Type.{u3}} [_inst_2 : OrderedCancelAddCommMonoid.{u3} Γ'] [_inst_3 : NonAssocSemiring.{u2} R] (f : OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))), (Eq.{succ u3} Γ' (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderEmbedding.{u1, u3} Γ Γ' (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2)))) (fun (_x : RelEmbedding.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) => Γ -> Γ') (RelEmbedding.hasCoeToFun.{u1, u3} Γ Γ' (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1)))) (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))))) f (OfNat.ofNat.{u1} Γ 0 (OfNat.mk.{u1} Γ 0 (Zero.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))))))) (OfNat.ofNat.{u3} Γ' 0 (OfNat.mk.{u3} Γ' 0 (Zero.zero.{u3} Γ' (AddZeroClass.toHasZero.{u3} Γ' (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))))))) -> (Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.embDomain.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) f (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.hasOne.{u1, u2} Γ R _inst_1 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))) (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R _inst_3)))))))) (OfNat.ofNat.{max u3 u2} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) 1 (OfNat.mk.{max u3 u2} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) 1 (One.one.{max u3 u2} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.hasOne.{u3, u2} Γ' R _inst_2 (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))) (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R _inst_3))))))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u3}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] {Γ' : Type.{u1}} [_inst_2 : OrderedCancelAddCommMonoid.{u1} Γ'] [_inst_3 : NonAssocSemiring.{u3} R] (f : OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))), (Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderEmbedding.{u2, u1} Γ Γ' (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2)))) Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (RelEmbedding.instRelHomClassRelEmbedding.{u2, u1} Γ Γ' (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Γ) => LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ') (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ') => LE.le.{u1} Γ' (Preorder.toLE.{u1} Γ' (PartialOrder.toPreorder.{u1} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699))) f (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (AddRightCancelMonoid.toZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (AddCancelMonoid.toAddRightCancelMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (AddCancelCommMonoid.toAddCancelMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : Γ) => Γ') (OfNat.ofNat.{u2} Γ 0 (Zero.toOfNat0.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))))) _inst_2))))))) -> (Eq.{max (succ u3) (succ u1)} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.embDomain.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3)) Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) f (OfNat.ofNat.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) 1 (One.toOfNat1.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u3} Γ R _inst_1 (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3)) (NonAssocSemiring.toOne.{u3} R _inst_3))))) (OfNat.ofNat.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) 1 (One.toOfNat1.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u1, u3} Γ' R _inst_2 (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3)) (NonAssocSemiring.toOne.{u3} R _inst_3)))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_one HahnSeries.embDomain_oneₓ'. -/
theorem embDomain_one [NonAssocSemiring R] (f : Γ ↪o Γ') (hf : f 0 = 0) :
embDomain f (1 : HahnSeries Γ R) = (1 : HahnSeries Γ' R) :=
embDomain_single.trans <| hf.symm ▸ rfl
#align hahn_series.emb_domain_one HahnSeries.embDomain_one
+/- warning: hahn_series.emb_domain_ring_hom -> HahnSeries.embDomainRingHom is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {Γ' : Type.{u3}} [_inst_2 : OrderedCancelAddCommMonoid.{u3} Γ'] [_inst_3 : NonAssocSemiring.{u2} R] (f : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))), (Function.Injective.{succ u1, succ u3} Γ Γ' (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f)) -> (forall (g : Γ) (g' : Γ), Iff (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f g) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f g')) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) g g')) -> (RingHom.{max u1 u2, max u3 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3) (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {Γ' : Type.{u3}} [_inst_2 : OrderedCancelAddCommMonoid.{u3} Γ'] [_inst_3 : NonAssocSemiring.{u2} R] (f : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))), (Function.Injective.{succ u1, succ u3} Γ Γ' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u3} Γ' (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))))) f)) -> (forall (g : Γ) (g' : Γ), Iff (LE.le.{u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (Preorder.toLE.{u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (PartialOrder.toPreorder.{u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) _inst_2))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u3} Γ' (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))))) f g) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u3} Γ' (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u3, u1, u3} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))))) f g')) (LE.le.{u1} Γ (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) g g')) -> (RingHom.{max u2 u1, max u2 u3} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_3))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroOneClass.toZero.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ' R _inst_2 _inst_3))
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_ring_hom HahnSeries.embDomainRingHomₓ'. -/
/-- Extending the domain of Hahn series is a ring homomorphism. -/
@[simps]
def embDomainRingHom [NonAssocSemiring R] (f : Γ →+ Γ') (hfi : Function.Injective f)
@@ -1084,10 +1550,16 @@ def embDomainRingHom [NonAssocSemiring R] (f : Γ →+ Γ') (hfi : Function.Inje
map_add' := embDomain_add _
#align hahn_series.emb_domain_ring_hom HahnSeries.embDomainRingHom
-theorem embDomainRingHom_c [NonAssocSemiring R] {f : Γ →+ Γ'} {hfi : Function.Injective f}
- {hf : ∀ g g' : Γ, f g ≤ f g' ↔ g ≤ g'} {r : R} : embDomainRingHom f hfi hf (c r) = c r :=
+/- warning: hahn_series.emb_domain_ring_hom_C -> HahnSeries.embDomainRingHom_C is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {Γ' : Type.{u3}} [_inst_2 : OrderedCancelAddCommMonoid.{u3} Γ'] [_inst_3 : NonAssocSemiring.{u2} R] {f : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))} {hfi : Function.Injective.{succ u1, succ u3} Γ Γ' (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f)} {hf : forall (g : Γ) (g' : Γ), Iff (LE.le.{u3} Γ' (Preorder.toHasLe.{u3} Γ' (PartialOrder.toPreorder.{u3} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f g) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) (fun (_x : AddMonoidHom.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u3} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u3} Γ' (AddRightCancelMonoid.toAddMonoid.{u3} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u3} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u3} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u3} Γ' _inst_2)))))) f g')) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) g g')} {r : R}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (coeFn.{max (succ (max u1 u2)) (succ (max u3 u2)), max (succ (max u1 u2)) (succ (max u3 u2))} (RingHom.{max u1 u2, max u3 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3) (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) (fun (_x : RingHom.{max u1 u2, max u3 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3) (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) -> (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))))) (RingHom.hasCoeToFun.{max u1 u2, max u3 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3) (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) (HahnSeries.embDomainRingHom.{u1, u2, u3} Γ R _inst_1 Γ' _inst_2 _inst_3 f hfi hf) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3)) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3)) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 _inst_3)) (HahnSeries.C.{u1, u2} Γ R _inst_1 _inst_3) r)) (coeFn.{max (succ u2) (succ (max u3 u2)), max (succ u2) (succ (max u3 u2))} (RingHom.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) (fun (_x : RingHom.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) => R -> (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3))))) (RingHom.hasCoeToFun.{u2, max u3 u2} R (HahnSeries.{u3, u2} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ' _inst_2) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R _inst_3)))) _inst_3 (HahnSeries.nonAssocSemiring.{u3, u2} Γ' R _inst_2 _inst_3)) (HahnSeries.C.{u3, u2} Γ' R _inst_2 _inst_3) r)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u3}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] {Γ' : Type.{u1}} [_inst_2 : OrderedCancelAddCommMonoid.{u1} Γ'] [_inst_3 : NonAssocSemiring.{u3} R] {f : AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))} {hfi : Function.Injective.{succ u2, succ u1} Γ Γ' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1)))))) (AddZeroClass.toAdd.{u1} Γ' (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))))) f)} {hf : forall (g : Γ) (g' : Γ), Iff (LE.le.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (Preorder.toLE.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (PartialOrder.toPreorder.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (OrderedCancelAddCommMonoid.toPartialOrder.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) _inst_2))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1)))))) (AddZeroClass.toAdd.{u1} Γ' (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))))) f g) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddZeroClass.toAdd.{u2} Γ (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1)))))) (AddZeroClass.toAdd.{u1} Γ' (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2))))) (AddMonoidHom.addMonoidHomClass.{u2, u1} Γ Γ' (AddMonoid.toAddZeroClass.{u2} Γ (AddRightCancelMonoid.toAddMonoid.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u1} Γ' (AddRightCancelMonoid.toAddMonoid.{u1} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ' _inst_2)))))))) f g')) (LE.le.{u2} Γ (Preorder.toLE.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1))) g g')} {r : R}, Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) => HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) a) (MulHomClass.toFunLike.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toMul.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (RingHom.instRingHomClassRingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3))))) (HahnSeries.C.{u2, u3} Γ R _inst_1 _inst_3) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), max (succ u1) (succ u3)} (RingHom.{max u3 u2, max u3 u1} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (fun (_x : HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) => HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _x) (MulHomClass.toFunLike.{max (max u2 u1) u3, max u2 u3, max u1 u3} (RingHom.{max u3 u2, max u3 u1} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3))) (NonUnitalNonAssocSemiring.toMul.{max u1 u3} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max (max u2 u1) u3, max u2 u3, max u1 u3} (RingHom.{max u3 u2, max u3 u1} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max (max u2 u1) u3, max u2 u3, max u1 u3} (RingHom.{max u3 u2, max u3 u1} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3) (RingHom.instRingHomClassRingHom.{max u2 u3, max u1 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3))))) (HahnSeries.embDomainRingHom.{u2, u3, u1} Γ R _inst_1 Γ' _inst_2 _inst_3 f hfi hf) (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _x) (MulHomClass.toFunLike.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toMul.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max u3 u2, u3, max u3 u2} (RingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3)) R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3) (RingHom.instRingHomClassRingHom.{u3, max u3 u2} R (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u3} Γ R _inst_1 _inst_3))))) (HahnSeries.C.{u2, u3} Γ R _inst_1 _inst_3) r)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, max (succ u3) (succ u1)} (RingHom.{u3, max u3 u1} R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _x) (MulHomClass.toFunLike.{max u3 u1, u3, max u3 u1} (RingHom.{u3, max u3 u1} R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toMul.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, max u3 u1} (RingHom.{u3, max u3 u1} R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u1} (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, max u3 u1} (RingHom.{u3, max u3 u1} R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3)) R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3) (RingHom.instRingHomClassRingHom.{u3, max u3 u1} R (HahnSeries.{u1, u3} Γ' R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ' _inst_2) (MulZeroOneClass.toZero.{u3} R (NonAssocSemiring.toMulZeroOneClass.{u3} R _inst_3))) _inst_3 (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u3} Γ' R _inst_2 _inst_3))))) (HahnSeries.C.{u1, u3} Γ' R _inst_2 _inst_3) r)
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_ring_hom_C HahnSeries.embDomainRingHom_Cₓ'. -/
+theorem embDomainRingHom_C [NonAssocSemiring R] {f : Γ →+ Γ'} {hfi : Function.Injective f}
+ {hf : ∀ g g' : Γ, f g ≤ f g' ↔ g ≤ g'} {r : R} : embDomainRingHom f hfi hf (C r) = C r :=
embDomain_single.trans (by simp)
-#align hahn_series.emb_domain_ring_hom_C HahnSeries.embDomainRingHom_c
+#align hahn_series.emb_domain_ring_hom_C HahnSeries.embDomainRingHom_C
end Domain
@@ -1097,7 +1569,7 @@ variable [CommSemiring R] {A : Type _} [Semiring A] [Algebra R A]
instance : Algebra R (HahnSeries Γ A)
where
- toRingHom := c.comp (algebraMap R A)
+ toRingHom := C.comp (algebraMap R A)
smul_def' r x := by
ext
simp
@@ -1107,11 +1579,23 @@ instance : Algebra R (HahnSeries Γ A)
Function.comp_apply, algebraMap_smul, mul_single_zero_coeff]
rw [← Algebra.commutes, Algebra.smul_def]
-theorem c_eq_algebraMap : c = algebraMap R (HahnSeries Γ R) :=
+/- warning: hahn_series.C_eq_algebra_map -> HahnSeries.C_eq_algebraMap is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommSemiring.{u2} R], Eq.{max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (HahnSeries.C.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (algebraMap.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))) _inst_2 (HahnSeries.semiring.{u1, u2} Γ R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)) (HahnSeries.algebra.{u1, u2, u2} Γ R _inst_1 _inst_2 R (CommSemiring.toSemiring.{u2} R _inst_2) (Algebra.id.{u2} R _inst_2)))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : CommSemiring.{u1} R], Eq.{max (succ u2) (succ u1)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)))) (HahnSeries.C.{u2, u1} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (algebraMap.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2))) _inst_2 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1} Γ R _inst_1 (CommSemiring.toSemiring.{u1} R _inst_2)) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1, u1} Γ R _inst_1 _inst_2 R (CommSemiring.toSemiring.{u1} R _inst_2) (Algebra.id.{u1} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.C_eq_algebra_map HahnSeries.C_eq_algebraMapₓ'. -/
+theorem C_eq_algebraMap : C = algebraMap R (HahnSeries Γ R) :=
rfl
-#align hahn_series.C_eq_algebra_map HahnSeries.c_eq_algebraMap
-
-theorem algebraMap_apply {r : R} : algebraMap R (HahnSeries Γ A) r = c (algebraMap R A r) :=
+#align hahn_series.C_eq_algebra_map HahnSeries.C_eq_algebraMap
+
+/- warning: hahn_series.algebra_map_apply -> HahnSeries.algebraMap_apply is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommSemiring.{u2} R] {A : Type.{u3}} [_inst_3 : Semiring.{u3} A] [_inst_4 : Algebra.{u2, u3} R A _inst_2 _inst_3] {r : R}, Eq.{max (succ u1) (succ u3)} (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (coeFn.{max (succ u2) (succ (max u1 u3)), max (succ u2) (succ (max u1 u3))} (RingHom.{u2, max u1 u3} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u3} (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (HahnSeries.semiring.{u1, u3} Γ A _inst_1 _inst_3))) (fun (_x : RingHom.{u2, max u1 u3} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u3} (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (HahnSeries.semiring.{u1, u3} Γ A _inst_1 _inst_3))) => R -> (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3)))))) (RingHom.hasCoeToFun.{u2, max u1 u3} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u3} (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (HahnSeries.semiring.{u1, u3} Γ A _inst_1 _inst_3))) (algebraMap.{u2, max u1 u3} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) _inst_2 (HahnSeries.semiring.{u1, u3} Γ A _inst_1 _inst_3) (HahnSeries.algebra.{u1, u2, u3} Γ R _inst_1 _inst_2 A _inst_3 _inst_4)) r) (coeFn.{max (succ u3) (succ (max u1 u3)), max (succ u3) (succ (max u1 u3))} (RingHom.{u3, max u1 u3} A (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u3} A _inst_3) (HahnSeries.nonAssocSemiring.{u1, u3} Γ A _inst_1 (Semiring.toNonAssocSemiring.{u3} A _inst_3))) (fun (_x : RingHom.{u3, max u1 u3} A (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u3} A _inst_3) (HahnSeries.nonAssocSemiring.{u1, u3} Γ A _inst_1 (Semiring.toNonAssocSemiring.{u3} A _inst_3))) => A -> (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3)))))) (RingHom.hasCoeToFun.{u3, max u1 u3} A (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (Semiring.toNonAssocSemiring.{u3} A _inst_3) (HahnSeries.nonAssocSemiring.{u1, u3} Γ A _inst_1 (Semiring.toNonAssocSemiring.{u3} A _inst_3))) (HahnSeries.C.{u1, u3} Γ A _inst_1 (Semiring.toNonAssocSemiring.{u3} A _inst_3)) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (RingHom.{u2, u3} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{u3} A _inst_3)) (fun (_x : RingHom.{u2, u3} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{u3} A _inst_3)) => R -> A) (RingHom.hasCoeToFun.{u2, u3} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{u3} A _inst_3)) (algebraMap.{u2, u3} R A _inst_2 _inst_3 _inst_4) r))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u3} Γ] [_inst_2 : CommSemiring.{u1} R] {A : Type.{u2}} [_inst_3 : Semiring.{u2} A] [_inst_4 : Algebra.{u1, u2} R A _inst_2 _inst_3] {r : R}, Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) r) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), succ u1, max (succ u3) (succ u2)} (RingHom.{u1, max u2 u3} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) _x) (MulHomClass.toFunLike.{max (max u3 u1) u2, u1, max u3 u2} (RingHom.{u1, max u2 u3} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3))) R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u3 u2} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3)))) (NonUnitalRingHomClass.toMulHomClass.{max (max u3 u1) u2, u1, max u3 u2} (RingHom.{u1, max u2 u3} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3))) R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3))) (RingHomClass.toNonUnitalRingHomClass.{max (max u3 u1) u2, u1, max u3 u2} (RingHom.{u1, max u2 u3} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3))) R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3)) (RingHom.instRingHomClassRingHom.{u1, max u3 u2} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3)))))) (algebraMap.{u1, max u2 u3} R (HahnSeries.{u3, u2} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_3))) _inst_2 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ A _inst_1 _inst_3) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u1, u2} Γ R _inst_1 _inst_2 A _inst_3 _inst_4)) r) (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u2 u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (fun (_x : (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) => HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u2 u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (NonUnitalNonAssocSemiring.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u2 u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u2 u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (HahnSeries.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MulZeroOneClass.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (NonAssocSemiring.toMulZeroOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))) (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)))))) (HahnSeries.C.{u3, u2} Γ ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_1 (Semiring.toNonAssocSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_3)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3)) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3)) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3)) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{u2} A _inst_3))))) (algebraMap.{u1, u2} R A _inst_2 _inst_3 _inst_4) r))
+Case conversion may be inaccurate. Consider using '#align hahn_series.algebra_map_apply HahnSeries.algebraMap_applyₓ'. -/
+theorem algebraMap_apply {r : R} : algebraMap R (HahnSeries Γ A) r = C (algebraMap R A r) :=
rfl
#align hahn_series.algebra_map_apply HahnSeries.algebraMap_apply
@@ -1131,11 +1615,17 @@ section Domain
variable {Γ' : Type _} [OrderedCancelAddCommMonoid Γ']
+/- warning: hahn_series.emb_domain_alg_hom -> HahnSeries.embDomainAlgHom is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommSemiring.{u2} R] {A : Type.{u3}} [_inst_3 : Semiring.{u3} A] [_inst_4 : Algebra.{u2, u3} R A _inst_2 _inst_3] {Γ' : Type.{u4}} [_inst_5 : OrderedCancelAddCommMonoid.{u4} Γ'] (f : AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))), (Function.Injective.{succ u1, succ u4} Γ Γ' (coeFn.{max (succ u4) (succ u1), max (succ u1) (succ u4)} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (fun (_x : AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) f)) -> (forall (g : Γ) (g' : Γ), Iff (LE.le.{u4} Γ' (Preorder.toHasLe.{u4} Γ' (PartialOrder.toPreorder.{u4} Γ' (OrderedCancelAddCommMonoid.toPartialOrder.{u4} Γ' _inst_5))) (coeFn.{max (succ u4) (succ u1), max (succ u1) (succ u4)} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (fun (_x : AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) f g) (coeFn.{max (succ u4) (succ u1), max (succ u1) (succ u4)} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (fun (_x : AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) => Γ -> Γ') (AddMonoidHom.hasCoeToFun.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) f g')) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) g g')) -> (AlgHom.{u2, max u1 u3, max u4 u3} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) (HahnSeries.{u4, u3} Γ' A (OrderedCancelAddCommMonoid.toPartialOrder.{u4} Γ' _inst_5) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_3))))) _inst_2 (HahnSeries.semiring.{u1, u3} Γ A _inst_1 _inst_3) (HahnSeries.semiring.{u4, u3} Γ' A _inst_5 _inst_3) (HahnSeries.algebra.{u1, u2, u3} Γ R _inst_1 _inst_2 A _inst_3 _inst_4) (HahnSeries.algebra.{u4, u2, u3} Γ' R _inst_5 _inst_2 A _inst_3 _inst_4))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommSemiring.{u2} R] {A : Type.{u3}} [_inst_3 : Semiring.{u3} A] [_inst_4 : Algebra.{u2, u3} R A _inst_2 _inst_3] {Γ' : Type.{u4}} [_inst_5 : OrderedCancelAddCommMonoid.{u4} Γ'] (f : AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))), (Function.Injective.{succ u1, succ u4} Γ Γ' (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u4} Γ' (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5))))) (AddMonoidHom.addMonoidHomClass.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))))) f)) -> (forall (g : Γ) (g' : Γ), Iff (LE.le.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (Preorder.toLE.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (PartialOrder.toPreorder.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) (OrderedCancelAddCommMonoid.toPartialOrder.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') g) _inst_5))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u4} Γ' (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5))))) (AddMonoidHom.addMonoidHomClass.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))))) f g) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ (fun (_x : Γ) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : Γ) => Γ') _x) (AddHomClass.toFunLike.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddZeroClass.toAdd.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1)))))) (AddZeroClass.toAdd.{u4} Γ' (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) (AddMonoidHomClass.toAddHomClass.{max u1 u4, u1, u4} (AddMonoidHom.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))) Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5))))) (AddMonoidHom.addMonoidHomClass.{u1, u4} Γ Γ' (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ _inst_1))))) (AddMonoid.toAddZeroClass.{u4} Γ' (AddRightCancelMonoid.toAddMonoid.{u4} Γ' (AddCancelMonoid.toAddRightCancelMonoid.{u4} Γ' (AddCancelCommMonoid.toAddCancelMonoid.{u4} Γ' (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u4} Γ' _inst_5)))))))) f g')) (LE.le.{u1} Γ (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1))) g g')) -> (AlgHom.{u2, max u3 u1, max u3 u4} R (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u3} A (Semiring.toMonoidWithZero.{u3} A _inst_3))) (HahnSeries.{u4, u3} Γ' A (OrderedCancelAddCommMonoid.toPartialOrder.{u4} Γ' _inst_5) (MonoidWithZero.toZero.{u3} A (Semiring.toMonoidWithZero.{u3} A _inst_3))) _inst_2 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u3} Γ A _inst_1 _inst_3) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u4, u3} Γ' A _inst_5 _inst_3) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2, u3} Γ R _inst_1 _inst_2 A _inst_3 _inst_4) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u4, u2, u3} Γ' R _inst_5 _inst_2 A _inst_3 _inst_4))
+Case conversion may be inaccurate. Consider using '#align hahn_series.emb_domain_alg_hom HahnSeries.embDomainAlgHomₓ'. -/
/-- Extending the domain of Hahn series is an algebra homomorphism. -/
@[simps]
def embDomainAlgHom (f : Γ →+ Γ') (hfi : Function.Injective f)
(hf : ∀ g g' : Γ, f g ≤ f g' ↔ g ≤ g') : HahnSeries Γ A →ₐ[R] HahnSeries Γ' A :=
- { embDomainRingHom f hfi hf with commutes' := fun r => embDomainRingHom_c }
+ { embDomainRingHom f hfi hf with commutes' := fun r => embDomainRingHom_C }
#align hahn_series.emb_domain_alg_hom HahnSeries.embDomainAlgHom
end Domain
@@ -1148,6 +1638,12 @@ section Semiring
variable [Semiring R]
+/- warning: hahn_series.to_power_series -> HahnSeries.toPowerSeries is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R], RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1)))))
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R], RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.to_power_series HahnSeries.toPowerSeriesₓ'. -/
/-- The ring `hahn_series ℕ R` is isomorphic to `power_series R`. -/
@[simps]
def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
@@ -1175,11 +1671,23 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R
rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_power_series HahnSeries.toPowerSeries
+/- warning: hahn_series.coeff_to_power_series -> HahnSeries.coeff_toPowerSeries is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))} {n : Nat}, Eq.{succ u1} R (coeFn.{succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (PowerSeries.{u1} R) -> R) (LinearMap.hasCoeToFun.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) (coeFn.{succ u1, succ u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1)))))) (fun (_x : RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1)))))) => (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) -> (PowerSeries.{u1} R)) (RingEquiv.hasCoeToFun.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1)))))) (HahnSeries.toPowerSeries.{u1} R _inst_1) f)) (HahnSeries.coeff.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) f n)
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))} {n : Nat}, Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : PowerSeries.{u1} R) => R) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (a : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => PowerSeries.{u1} R) a) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))))))) (HahnSeries.toPowerSeries.{u1} R _inst_1) f)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : PowerSeries.{u1} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => PowerSeries.{u1} R) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))))))) (HahnSeries.toPowerSeries.{u1} R _inst_1) f)) (HahnSeries.coeff.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) f n)
+Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_power_series HahnSeries.coeff_toPowerSeriesₓ'. -/
theorem coeff_toPowerSeries {f : HahnSeries ℕ R} {n : ℕ} :
PowerSeries.coeff R n f.toPowerSeries = f.coeff n :=
PowerSeries.coeff_mk _ _
#align hahn_series.coeff_to_power_series HahnSeries.coeff_toPowerSeries
+/- warning: hahn_series.coeff_to_power_series_symm -> HahnSeries.coeff_toPowerSeries_symm is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : PowerSeries.{u1} R} {n : Nat}, Eq.{succ u1} R (HahnSeries.coeff.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{succ u1, succ u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (fun (_x : RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) => (PowerSeries.{u1} R) -> (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.hasCoeToFun.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.symm.{u1, u1} (HahnSeries.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (PowerSeries.{u1} R) (HahnSeries.hasMul.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{0, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toHasMul.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (Distrib.toHasAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.semiring.{u1} R _inst_1))))) (HahnSeries.toPowerSeries.{u1} R _inst_1)) f) n) (coeFn.{succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (PowerSeries.{u1} R) -> R) (LinearMap.hasCoeToFun.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.addCommMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.module.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) f)
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {f : PowerSeries.{u1} R} {n : Nat}, Eq.{succ u1} R (HahnSeries.coeff.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonUnitalSemiring.{u1} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u1, u1} (PowerSeries.{u1} R) (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))))) (RingEquiv.symm.{u1, u1} (HahnSeries.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u1} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{u1} (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toDistrib.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))))) (HahnSeries.toPowerSeries.{u1} R _inst_1)) f) n) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u1, u1, u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (PowerSeries.{u1} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : PowerSeries.{u1} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u1, u1} R R (PowerSeries.{u1} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u1, u1} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.coeff.{u1} R _inst_1 n) f)
+Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_power_series_symm HahnSeries.coeff_toPowerSeries_symmₓ'. -/
theorem coeff_toPowerSeries_symm {f : PowerSeries R} {n : ℕ} :
(HahnSeries.toPowerSeries.symm f).coeff n = PowerSeries.coeff R n f :=
rfl
@@ -1187,6 +1695,12 @@ theorem coeff_toPowerSeries_symm {f : PowerSeries R} {n : ℕ} :
variable (Γ R) [StrictOrderedSemiring Γ]
+/- warning: hahn_series.of_power_series -> HahnSeries.ofPowerSeries is a dubious translation:
+lean 3 declaration is
+ forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ], RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))
+but is expected to have type
+ forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ], RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))
+Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series HahnSeries.ofPowerSeriesₓ'. -/
/-- Casts a power series as a Hahn series with coefficients from an `strict_ordered_semiring`. -/
def ofPowerSeries : PowerSeries R →+* HahnSeries Γ R :=
(HahnSeries.embDomainRingHom (Nat.castAddMonoidHom Γ) Nat.strictMono_cast.Injective fun _ _ =>
@@ -1196,10 +1710,22 @@ def ofPowerSeries : PowerSeries R →+* HahnSeries Γ R :=
variable {Γ} {R}
+/- warning: hahn_series.of_power_series_injective -> HahnSeries.ofPowerSeries_injective is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ], Function.Injective.{succ u2, max (succ u1) (succ u2)} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ], Function.Injective.{succ u2, max (succ u1) (succ u2)} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2))
+Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_injective HahnSeries.ofPowerSeries_injectiveₓ'. -/
theorem ofPowerSeries_injective : Function.Injective (ofPowerSeries Γ R) :=
embDomain_injective.comp toPowerSeries.symm.Injective
#align hahn_series.of_power_series_injective HahnSeries.ofPowerSeries_injective
+/- warning: hahn_series.of_power_series_apply -> HahnSeries.ofPowerSeries_apply is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (x : PowerSeries.{u2} R), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) x) (HahnSeries.embDomain.{0, u2, u1} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (RelEmbedding.mk.{0, u1} Nat Γ (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))))) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2))))) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) (fun (a : Nat) (b : Nat) => Eq.mpr.{0} (Iff (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b)) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b)) (Iff (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) a) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) b)) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b)) (id_tag Tactic.IdTag.simp (Eq.{1} Prop (Iff (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b)) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b)) (Iff (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) a) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) b)) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b))) ((fun (a : Prop) (a_1 : Prop) (e_1 : Eq.{1} Prop a a_1) (b : Prop) (b_1 : Prop) (e_2 : Eq.{1} Prop b b_1) => congr.{1, 1} Prop Prop (Iff a) (Iff a_1) b b_1 (congr_arg.{1, 1} Prop (Prop -> Prop) a a_1 Iff e_1) e_2) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b)) (LE.le.{u1} Γ (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) a) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) b)) ((fun [self : LE.{u1} Γ] (ᾰ : Γ) (ᾰ_1 : Γ) (e_2 : Eq.{succ u1} Γ ᾰ ᾰ_1) (ᾰ_2 : Γ) (ᾰ_3 : Γ) (e_3 : Eq.{succ u1} Γ ᾰ_2 ᾰ_3) => congr.{succ u1, 1} Γ Prop (LE.le.{u1} Γ self ᾰ) (LE.le.{u1} Γ self ᾰ_1) ᾰ_2 ᾰ_3 (congr_arg.{succ u1, succ u1} Γ (Γ -> Prop) ᾰ ᾰ_1 (LE.le.{u1} Γ self) e_2) e_3) (Preorder.toHasLe.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)))) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) a) (congr_fun.{1, succ u1} Nat (fun (ᾰ : Nat) => Γ) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2))))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (Function.Embedding.coeFn_mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) b) (congr_fun.{1, succ u1} Nat (fun (ᾰ : Nat) => Γ) (coeFn.{succ u1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) (fun (_x : Function.Embedding.{1, succ u1} Nat Γ) => Nat -> Γ) (Function.Embedding.hasCoeToFun.{1, succ u1} Nat Γ) (Function.Embedding.mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2))))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (Function.Embedding.coeFn_mk.{1, succ u1} Nat Γ ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommMonoid.toPartialOrder.{u1} Γ (OrderedSemiring.toOrderedAddCommMonoid.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))))))))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b)) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b) (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b) (rfl.{1} Prop (LE.le.{0} Nat (Preorder.toHasLe.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) a b)))) (Nat.cast_le.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2) a b))) (coeFn.{succ u2, succ u2} (RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Distrib.toHasMul.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (Distrib.toHasAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (HahnSeries.hasMul.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.hasAdd.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (fun (_x : RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Distrib.toHasMul.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (Distrib.toHasAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (HahnSeries.hasMul.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.hasAdd.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) => (PowerSeries.{u2} R) -> (HahnSeries.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingEquiv.hasCoeToFun.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Distrib.toHasMul.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (Distrib.toHasAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (HahnSeries.hasMul.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.hasAdd.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingEquiv.symm.{u2, u2} (HahnSeries.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (PowerSeries.{u2} R) (HahnSeries.hasMul.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.hasAdd.{0, u2} Nat R (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Distrib.toHasMul.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (Distrib.toHasAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))))) (HahnSeries.toPowerSeries.{u2} R _inst_1)) x))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (x : PowerSeries.{u2} R), Eq.{max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) x) (HahnSeries.embDomain.{0, u2, u1} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) Γ (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (RelEmbedding.mk.{0, u1} Nat Γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.682 : Nat) (x._@.Mathlib.Order.Hom.Basic._hyg.684 : Nat) => LE.le.{0} Nat (Preorder.toLE.{0} Nat (PartialOrder.toPreorder.{0} Nat (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring))) x._@.Mathlib.Order.Hom.Basic._hyg.682 x._@.Mathlib.Order.Hom.Basic._hyg.684) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.697 : Γ) (x._@.Mathlib.Order.Hom.Basic._hyg.699 : Γ) => LE.le.{u1} Γ (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.697 x._@.Mathlib.Order.Hom.Basic._hyg.699) (Function.Embedding.mk.{1, succ u1} Nat Γ (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedSemiring.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2))) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) (id.{0} (forall {a : Nat} {b : Nat}, Iff (LE.le.{u1} Γ (Preorder.toLE.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2))) (FunLike.coe.{succ u1, 1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) Nat (fun (a : Nat) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : Nat) => Γ) a) (EmbeddingLike.toFunLike.{succ u1, 1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) Nat Γ (Function.instEmbeddingLikeEmbedding.{1, succ u1} Nat Γ)) (Function.Embedding.mk.{1, succ u1} Nat Γ (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedSemiring.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2))) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) a) (FunLike.coe.{succ u1, 1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) Nat (fun (a : Nat) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : Nat) => Γ) a) (EmbeddingLike.toFunLike.{succ u1, 1, succ u1} (Function.Embedding.{1, succ u1} Nat Γ) Nat Γ (Function.instEmbeddingLikeEmbedding.{1, succ u1} Nat Γ)) (Function.Embedding.mk.{1, succ u1} Nat Γ (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))) (StrictMono.injective.{0, u1} Nat Γ Nat.linearOrder (PartialOrder.toPreorder.{u1} Γ (OrderedSemiring.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2))) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (OrderedSemiring.toSemiring.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2)))) (Nat.strictMono_cast.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2)))) b)) (LE.le.{0} Nat (Preorder.toLE.{0} Nat (PartialOrder.toPreorder.{0} Nat (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring))) a b)) (fun {a._@.Mathlib.RingTheory.HahnSeries._hyg.10651 : Nat} {b._@.Mathlib.RingTheory.HahnSeries._hyg.10652 : Nat} => Nat.cast_le.{u1} Γ (StrictOrderedSemiring.toOrderedSemiring.{u1} Γ _inst_2) (StrictOrderedSemiring.to_charZero.{u1} Γ _inst_2) a._@.Mathlib.RingTheory.HahnSeries._hyg.10651 b._@.Mathlib.RingTheory.HahnSeries._hyg.10652))) (FunLike.coe.{succ u2, succ u2, succ u2} (RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{u2, u2, u2} (RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u2} (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonUnitalSemiring.{u2} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u2, u2, u2} (RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonUnitalSemiring.{u2} R _inst_1))) (RingEquivClass.toNonUnitalRingHomClass.{u2, u2, u2} (RingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (HahnSeries.instNonUnitalNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonUnitalSemiring.{u2} R _inst_1))) (RingEquiv.instRingEquivClassRingEquiv.{u2, u2} (PowerSeries.{u2} R) (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))) (RingEquiv.symm.{u2, u2} (HahnSeries.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{0, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (HahnSeries.instAddHahnSeriesToZero.{0, u2} Nat R (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (AddMonoidWithOne.toAddMonoid.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Distrib.toAdd.{u2} (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toDistrib.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))))) (HahnSeries.toPowerSeries.{u2} R _inst_1)) x))
+Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_apply HahnSeries.ofPowerSeries_applyₓ'. -/
@[simp]
theorem ofPowerSeries_apply (x : PowerSeries R) :
ofPowerSeries Γ R x =
@@ -1212,12 +1738,24 @@ theorem ofPowerSeries_apply (x : PowerSeries R) :
rfl
#align hahn_series.of_power_series_apply HahnSeries.ofPowerSeries_apply
+/- warning: hahn_series.of_power_series_apply_coeff -> HahnSeries.ofPowerSeries_apply_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (x : PowerSeries.{u2} R) (n : Nat), Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) x) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) n)) (coeFn.{succ u2, succ u2} (LinearMap.{u2, u2, u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) R (PowerSeries.addCommMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.module.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) R (PowerSeries.addCommMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.module.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1)) => (PowerSeries.{u2} R) -> R) (LinearMap.hasCoeToFun.{u2, u2, u2, u2} R R (PowerSeries.{u2} R) R _inst_1 _inst_1 (PowerSeries.addCommMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.module.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.coeff.{u2} R _inst_1 n) x)
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (x : PowerSeries.{u2} R) (n : Nat), Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) x) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)) n)) (FunLike.coe.{succ u2, succ u2, succ u2} (LinearMap.{u2, u2, u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) R (PowerSeries.instAddCommMonoidPowerSeries.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1)) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : PowerSeries.{u2} R) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u2, u2} R R (PowerSeries.{u2} R) R _inst_1 _inst_1 (PowerSeries.instAddCommMonoidPowerSeries.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.instModulePowerSeriesInstAddCommMonoidPowerSeries.{u2, u2} R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (PowerSeries.coeff.{u2} R _inst_1 n) x)
+Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_apply_coeff HahnSeries.ofPowerSeries_apply_coeffₓ'. -/
theorem ofPowerSeries_apply_coeff (x : PowerSeries R) (n : ℕ) :
(ofPowerSeries Γ R x).coeff n = PowerSeries.coeff R n x := by simp
#align hahn_series.of_power_series_apply_coeff HahnSeries.ofPowerSeries_apply_coeff
+/- warning: hahn_series.of_power_series_C -> HahnSeries.ofPowerSeries_C is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ] (r : R), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) (coeFn.{succ u2, succ u2} (RingHom.{u2, u2} R (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, u2} R (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))) => R -> (PowerSeries.{u2} R)) (RingHom.hasCoeToFun.{u2, u2} R (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1))) (PowerSeries.C.{u2} R _inst_1) r)) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} R _inst_1) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.C.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1)) r)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] [_inst_2 : StrictOrderedSemiring.{u2} Γ] (r : R), Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{succ u1, succ u1, succ u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => PowerSeries.{u1} R) a) (MulHomClass.toFunLike.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (RingHom.instRingHomClassRingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (PowerSeries.C.{u1} R _inst_1) r)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.instRingHomClassRingHom.{u1, max u2 u1} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u2, u1} Γ R _inst_1 _inst_2) (FunLike.coe.{succ u1, succ u1, succ u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => PowerSeries.{u1} R) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (RingHom.instRingHomClassRingHom.{u1, u1} R (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))))) (PowerSeries.C.{u1} R _inst_1) r)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Semiring.toNonAssocSemiring.{u1} R _inst_1) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (HahnSeries.C.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)) r)
+Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_C HahnSeries.ofPowerSeries_Cₓ'. -/
@[simp]
-theorem ofPowerSeries_c (r : R) : ofPowerSeries Γ R (PowerSeries.C R r) = HahnSeries.c r :=
+theorem ofPowerSeries_C (r : R) : ofPowerSeries Γ R (PowerSeries.C R r) = HahnSeries.C r :=
by
ext n
simp only [C, single_coeff, of_power_series_apply, RingHom.coe_mk]
@@ -1229,10 +1767,16 @@ theorem ofPowerSeries_c (r : R) : ofPowerSeries Γ R (PowerSeries.C R r) = HahnS
PowerSeries.coeff_C]
intro
simp (config := { contextual := true }) [Ne.symm hn]
-#align hahn_series.of_power_series_C HahnSeries.ofPowerSeries_c
-
+#align hahn_series.of_power_series_C HahnSeries.ofPowerSeries_C
+
+/- warning: hahn_series.of_power_series_X -> HahnSeries.ofPowerSeries_X is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : Semiring.{u2} R] [_inst_2 : StrictOrderedSemiring.{u1} Γ], Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R _inst_1)) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R _inst_1 _inst_2) (PowerSeries.X.{u2} R _inst_1)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (OfNat.ofNat.{u1} Γ 1 (OfNat.mk.{u1} Γ 1 (One.one.{u1} Γ (AddMonoidWithOne.toOne.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2))))))))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] [_inst_2 : StrictOrderedSemiring.{u2} Γ], Eq.{max (succ u2) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (PowerSeries.X.{u1} R _inst_1)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (fun (_x : PowerSeries.{u1} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u1} R) => HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} (PowerSeries.{u1} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (PowerSeries.{u1} R) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, max u2 u1} (RingHom.{u1, max u1 u2} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.instRingHomClassRingHom.{u1, max u2 u1} (PowerSeries.{u1} R) (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} (PowerSeries.{u1} R) (PowerSeries.instSemiringPowerSeries.{u1} R _inst_1)) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u2} Γ _inst_2) (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (HahnSeries.ofPowerSeries.{u2, u1} Γ R _inst_1 _inst_2) (PowerSeries.X.{u1} R _inst_1)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (ZeroHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) R (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (ZeroHom.zeroHomClass.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))))) (HahnSeries.single.{u2, u1} Γ R (StrictOrderedSemiring.toPartialOrder.{u2} Γ _inst_2) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (OfNat.ofNat.{u2} Γ 1 (One.toOfNat1.{u2} Γ (Semiring.toOne.{u2} Γ (StrictOrderedSemiring.toSemiring.{u2} Γ _inst_2))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_Xₓ'. -/
@[simp]
-theorem ofPowerSeries_x : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
+theorem ofPowerSeries_X : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
by
ext n
simp only [single_coeff, of_power_series_apply, RingHom.coe_mk]
@@ -1244,8 +1788,14 @@ theorem ofPowerSeries_x : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
PowerSeries.coeff_X]
intro
simp (config := { contextual := true }) [Ne.symm hn]
-#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_x
-
+#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_X
+
+/- warning: hahn_series.of_power_series_X_pow -> HahnSeries.ofPowerSeries_x_pow is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} [_inst_2 : StrictOrderedSemiring.{u1} Γ] {R : Type.{u2}} [_inst_3 : CommSemiring.{u2} R] (n : Nat), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_3) _inst_2) (HPow.hPow.{u2, 0, u2} (PowerSeries.{u2} R) Nat (PowerSeries.{u2} R) (instHPow.{u2, 0} (PowerSeries.{u2} R) Nat (Monoid.Pow.{u2} (PowerSeries.{u2} R) (MonoidWithZero.toMonoid.{u2} (PowerSeries.{u2} R) (Semiring.toMonoidWithZero.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (PowerSeries.X.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)) n)) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) ((fun (a : Type) (b : Type.{u1}) [self : HasLiftT.{1, succ u1} a b] => self.0) Nat Γ (HasLiftT.mk.{1, succ u1} Nat Γ (CoeTCₓ.coe.{1, succ u1} Nat Γ (Nat.castCoe.{u1} Γ (AddMonoidWithOne.toNatCast.{u1} Γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} Γ (NonAssocSemiring.toAddCommMonoidWithOne.{u1} Γ (Semiring.toNonAssocSemiring.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)))))))) n)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))))))
+but is expected to have type
+ forall {Γ : Type.{u1}} [_inst_2 : StrictOrderedSemiring.{u1} Γ] {R : Type.{u2}} [_inst_3 : CommSemiring.{u2} R] (n : Nat), Eq.{max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HPow.hPow.{u2, 0, u2} (PowerSeries.{u2} R) Nat (PowerSeries.{u2} R) (instHPow.{u2, 0} (PowerSeries.{u2} R) Nat (Monoid.Pow.{u2} (PowerSeries.{u2} R) (MonoidWithZero.toMonoid.{u2} (PowerSeries.{u2} R) (Semiring.toMonoidWithZero.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (PowerSeries.X.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)) n)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_2) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_3) _inst_2) (HPow.hPow.{u2, 0, u2} (PowerSeries.{u2} R) Nat (PowerSeries.{u2} R) (instHPow.{u2, 0} (PowerSeries.{u2} R) Nat (Monoid.Pow.{u2} (PowerSeries.{u2} R) (MonoidWithZero.toMonoid.{u2} (PowerSeries.{u2} R) (Semiring.toMonoidWithZero.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (PowerSeries.X.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)) n)) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) _x) (ZeroHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (ZeroHom.{u2, max u2 u1} R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))))) R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (ZeroHom.zeroHomClass.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))) (HahnSeries.single.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_2) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3))) (Nat.cast.{u1} Γ (Semiring.toNatCast.{u1} Γ (StrictOrderedSemiring.toSemiring.{u1} Γ _inst_2)) n)) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R _inst_3)))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_x_powₓ'. -/
@[simp]
theorem ofPowerSeries_x_pow {R} [CommSemiring R] (n : ℕ) :
ofPowerSeries Γ R (PowerSeries.X ^ n) = single (n : Γ) 1 :=
@@ -1257,6 +1807,12 @@ theorem ofPowerSeries_x_pow {R} [CommSemiring R] (n : ℕ) :
rw [pow_succ, ih, of_power_series_X, mul_comm, single_mul_single, one_mul, Nat.cast_succ]
#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_x_pow
+/- warning: hahn_series.to_mv_power_series -> HahnSeries.toMvPowerSeries is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ], RingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1)))))
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ], RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.to_mv_power_series HahnSeries.toMvPowerSeriesₓ'. -/
-- Lemmas about converting hahn_series over fintype to and from mv_power_series
/-- The ring `hahn_series (σ →₀ ℕ) R` is isomorphic to `mv_power_series σ R` for a `fintype` `σ`.
We take the index set of the hahn series to be `finsupp` rather than `pi`,
@@ -1293,11 +1849,23 @@ def toMvPowerSeries {σ : Type _} [Fintype σ] : HahnSeries (σ →₀ ℕ) R
variable {σ : Type _} [Fintype σ]
+/- warning: hahn_series.coeff_to_mv_power_series -> HahnSeries.coeff_toMvPowerSeries is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))} {n : Finsupp.{u2, 0} σ Nat Nat.hasZero}, Eq.{succ u1} R (coeFn.{max (succ (max u2 u1)) (succ u1), max (succ (max u2 u1)) (succ u1)} (LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (MvPowerSeries.{u2, u1} σ R) -> R) (LinearMap.hasCoeToFun.{u1, u1, max u2 u1, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (RingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1)))))) (fun (_x : RingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1)))))) => (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) -> (MvPowerSeries.{u2, u1} σ R)) (RingEquiv.hasCoeToFun.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1)))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3) f)) (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) f n)
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))} {n : Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)}, Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : MvPowerSeries.{u2, u1} σ R) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (a : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => MvPowerSeries.{u2, u1} σ R) a) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3) f)) (FunLike.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2), succ u1} (LinearMap.{u1, u1, max u1 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : MvPowerSeries.{u2, u1} σ R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u1 u2, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => MvPowerSeries.{u2, u1} σ R) _x) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u1 u2, max u1 u2} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1)))))) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3) f)) (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) f n)
+Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_mv_power_series HahnSeries.coeff_toMvPowerSeriesₓ'. -/
theorem coeff_toMvPowerSeries {f : HahnSeries (σ →₀ ℕ) R} {n : σ →₀ ℕ} :
MvPowerSeries.coeff R n f.toMvPowerSeries = f.coeff n :=
rfl
#align hahn_series.coeff_to_mv_power_series HahnSeries.coeff_toMvPowerSeries
+/- warning: hahn_series.coeff_to_mv_power_series_symm -> HahnSeries.coeff_toMvPowerSeries_symm is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : MvPowerSeries.{u2, u1} σ R} {n : Finsupp.{u2, 0} σ Nat Nat.hasZero}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (fun (_x : RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) => (MvPowerSeries.{u2, u1} σ R) -> (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.hasCoeToFun.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (RingEquiv.symm.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.hasMul.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.hasAdd.{u2, u1} (Finsupp.{u2, 0} σ Nat Nat.hasZero) R (Finsupp.partialOrder.{u2, 0} σ Nat Nat.hasZero (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring))) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (MvPowerSeries.hasMul.{u2, u1} σ R _inst_1) (Distrib.toHasAdd.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u2 u1} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.semiring.{u2, u1} σ R _inst_1))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3)) f) n) (coeFn.{max (succ (max u2 u1)) (succ u1), max (succ (max u2 u1)) (succ u1)} (LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (fun (_x : LinearMap.{u1, u1, max u2 u1, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) => (MvPowerSeries.{u2, u1} σ R) -> R) (LinearMap.hasCoeToFun.{u1, u1, max u2 u1, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.addCommMonoid.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.module.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) f)
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {σ : Type.{u2}} [_inst_3 : Fintype.{u2} σ] {f : MvPowerSeries.{u2, u1} σ R} {n : Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)}, Eq.{succ u1} R (HahnSeries.coeff.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : MvPowerSeries.{u2, u1} σ R) => HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (MulHomClass.toFunLike.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MulEquivClass.instMulHomClass.{max u2 u1, max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (RingEquivClass.toMulEquivClass.{max u2 u1, max u2 u1, max u2 u1} (RingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (RingEquiv.instRingEquivClassRingEquiv.{max u2 u1, max u2 u1} (MvPowerSeries.{u2, u1} σ R) (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))))) (RingEquiv.symm.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MvPowerSeries.{u2, u1} σ R) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.orderedCancelAddCommMonoid.{u2, 0} σ Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instMulMvPowerSeries.{u2, u1} σ R _inst_1) (HahnSeries.instAddHahnSeriesToZero.{u2, u1} (Finsupp.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero)) R (Finsupp.partialorder.{u2, 0} σ Nat (LinearOrderedCommMonoidWithZero.toZero.{0} Nat Nat.linearOrderedCommMonoidWithZero) (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring)) (AddMonoidWithOne.toAddMonoid.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Distrib.toAdd.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonUnitalNonAssocSemiring.toDistrib.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (Semiring.toNonAssocSemiring.{max u1 u2} (MvPowerSeries.{u2, u1} σ R) (MvPowerSeries.instSemiringMvPowerSeries.{u2, u1} σ R _inst_1))))) (HahnSeries.toMvPowerSeries.{u1, u2} R _inst_1 σ _inst_3)) f) n) (FunLike.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2), succ u1} (LinearMap.{u1, u1, max u1 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) R (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1)) (MvPowerSeries.{u2, u1} σ R) (fun (_x : MvPowerSeries.{u2, u1} σ R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : MvPowerSeries.{u2, u1} σ R) => R) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u1 u2, u1} R R (MvPowerSeries.{u2, u1} σ R) R _inst_1 _inst_1 (MvPowerSeries.instAddCommMonoidMvPowerSeries.{u2, u1} σ R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.instModuleMvPowerSeriesInstAddCommMonoidMvPowerSeries.{u2, u1, u1} σ R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (Semiring.toModule.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (MvPowerSeries.coeff.{u2, u1} σ R _inst_1 n) f)
+Case conversion may be inaccurate. Consider using '#align hahn_series.coeff_to_mv_power_series_symm HahnSeries.coeff_toMvPowerSeries_symmₓ'. -/
theorem coeff_toMvPowerSeries_symm {f : MvPowerSeries σ R} {n : σ →₀ ℕ} :
(HahnSeries.toMvPowerSeries.symm f).coeff n = MvPowerSeries.coeff R n f :=
rfl
@@ -1309,6 +1877,12 @@ section Algebra
variable (R) [CommSemiring R] {A : Type _} [Semiring A] [Algebra R A]
+/- warning: hahn_series.to_power_series_alg -> HahnSeries.toPowerSeriesAlg is a dubious translation:
+lean 3 declaration is
+ forall (R : Type.{u1}) [_inst_1 : CommSemiring.{u1} R] {A : Type.{u2}} [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2], AlgEquiv.{u1, u2, u2} R (HahnSeries.{0, u2} Nat A (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)) (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))))) (PowerSeries.{u2} A) _inst_1 (HahnSeries.semiring.{0, u2} Nat A (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_2) (PowerSeries.semiring.{u2} A _inst_2) (HahnSeries.algebra.{0, u1, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_1 A _inst_2 _inst_3) (PowerSeries.algebra.{u1, u2} R A _inst_2 _inst_1 _inst_3)
+but is expected to have type
+ forall (R : Type.{u1}) [_inst_1 : CommSemiring.{u1} R] {A : Type.{u2}} [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2], AlgEquiv.{u1, u2, u2} R (HahnSeries.{0, u2} Nat A (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring) (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_2))) (PowerSeries.{u2} A) _inst_1 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{0, u2} Nat A (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_2) (PowerSeries.instSemiringPowerSeries.{u2} A _inst_2) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{0, u1, u2} Nat R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring) _inst_1 A _inst_2 _inst_3) (PowerSeries.instAlgebraPowerSeriesInstSemiringPowerSeries.{u1, u2} R A _inst_2 _inst_1 _inst_3)
+Case conversion may be inaccurate. Consider using '#align hahn_series.to_power_series_alg HahnSeries.toPowerSeriesAlgₓ'. -/
/-- The `R`-algebra `hahn_series ℕ A` is isomorphic to `power_series A`. -/
@[simps]
def toPowerSeriesAlg : HahnSeries ℕ A ≃ₐ[R] PowerSeries A :=
@@ -1326,6 +1900,12 @@ def toPowerSeriesAlg : HahnSeries ℕ A ≃ₐ[R] PowerSeries A :=
variable (Γ R) [StrictOrderedSemiring Γ]
+/- warning: hahn_series.of_power_series_alg -> HahnSeries.ofPowerSeriesAlg is a dubious translation:
+lean 3 declaration is
+ forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : CommSemiring.{u2} R] {A : Type.{u3}} [_inst_2 : Semiring.{u3} A] [_inst_3 : Algebra.{u2, u3} R A _inst_1 _inst_2] [_inst_4 : StrictOrderedSemiring.{u1} Γ], AlgHom.{u2, u3, max u1 u3} R (PowerSeries.{u3} A) (HahnSeries.{u1, u3} Γ A (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A _inst_2))))) _inst_1 (PowerSeries.semiring.{u3} A _inst_2) (HahnSeries.semiring.{u1, u3} Γ A (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) _inst_2) (PowerSeries.algebra.{u2, u3} R A _inst_2 _inst_1 _inst_3) (HahnSeries.algebra.{u1, u2, u3} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) _inst_1 A _inst_2 _inst_3)
+but is expected to have type
+ forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : CommSemiring.{u2} R] {A : Type.{u3}} [_inst_2 : Semiring.{u3} A] [_inst_3 : Algebra.{u2, u3} R A _inst_1 _inst_2] [_inst_4 : StrictOrderedSemiring.{u1} Γ], AlgHom.{u2, u3, max u3 u1} R (PowerSeries.{u3} A) (HahnSeries.{u1, u3} Γ A (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u3} A (Semiring.toMonoidWithZero.{u3} A _inst_2))) _inst_1 (PowerSeries.instSemiringPowerSeries.{u3} A _inst_2) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u3} Γ A (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) _inst_2) (PowerSeries.instAlgebraPowerSeriesInstSemiringPowerSeries.{u2, u3} R A _inst_2 _inst_1 _inst_3) (HahnSeries.instAlgebraHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2, u3} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) _inst_1 A _inst_2 _inst_3)
+Case conversion may be inaccurate. Consider using '#align hahn_series.of_power_series_alg HahnSeries.ofPowerSeriesAlgₓ'. -/
/-- Casting a power series as a Hahn series with coefficients from an `strict_ordered_semiring`
is an algebra homomorphism. -/
@[simps]
@@ -1335,6 +1915,12 @@ def ofPowerSeriesAlg : PowerSeries A →ₐ[R] HahnSeries Γ A :=
(AlgEquiv.toAlgHom (toPowerSeriesAlg R).symm)
#align hahn_series.of_power_series_alg HahnSeries.ofPowerSeriesAlg
+/- warning: hahn_series.power_series_algebra -> HahnSeries.powerSeriesAlgebra is a dubious translation:
+lean 3 declaration is
+ forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ] {S : Type.{u3}} [_inst_5 : CommSemiring.{u3} S] [_inst_6 : Algebra.{u3, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))], Algebra.{u3, max u1 u2} S (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_5 (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))
+but is expected to have type
+ forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ] {S : Type.{u3}} [_inst_5 : CommSemiring.{u3} S] [_inst_6 : Algebra.{u3, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))], Algebra.{u3, max u2 u1} S (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) _inst_5 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))
+Case conversion may be inaccurate. Consider using '#align hahn_series.power_series_algebra HahnSeries.powerSeriesAlgebraₓ'. -/
instance powerSeriesAlgebra {S : Type _} [CommSemiring S] [Algebra S (PowerSeries R)] :
Algebra S (HahnSeries Γ R) :=
RingHom.toAlgebra <| (ofPowerSeries Γ R).comp (algebraMap S (PowerSeries R))
@@ -1342,17 +1928,35 @@ instance powerSeriesAlgebra {S : Type _} [CommSemiring S] [Algebra S (PowerSerie
variable {R} {S : Type _} [CommSemiring S] [Algebra S (PowerSeries R)]
+/- warning: hahn_series.algebra_map_apply' -> HahnSeries.algebraMap_apply' is a dubious translation:
+lean 3 declaration is
+ forall (Γ : Type.{u1}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ] {S : Type.{u3}} [_inst_5 : CommSemiring.{u3} S] [_inst_6 : Algebra.{u3, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))] (x : S), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (RingHom.{u3, max u1 u2} S (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u3, max u1 u2} S (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) => S -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (RingHom.hasCoeToFun.{u3, max u1 u2} S (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (algebraMap.{u3, max u1 u2} S (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_5 (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u1, u2, u3} Γ R _inst_1 _inst_4 S _inst_5 _inst_6)) x) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_1) _inst_4) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (RingHom.{u3, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u3, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => S -> (PowerSeries.{u2} R)) (RingHom.hasCoeToFun.{u3, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (algebraMap.{u3, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) _inst_6) x))
+but is expected to have type
+ forall (Γ : Type.{u3}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u3} Γ] {S : Type.{u1}} [_inst_5 : CommSemiring.{u1} S] [_inst_6 : Algebra.{u1, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))] (x : S), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (RingHom.{u1, max u2 u3} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max (max u3 u2) u1, u1, max u3 u2} (RingHom.{u1, max u2 u3} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)))) (NonUnitalNonAssocSemiring.toMul.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max (max u3 u2) u1, u1, max u3 u2} (RingHom.{u1, max u2 u3} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max (max u3 u2) u1, u1, max u3 u2} (RingHom.{u1, max u2 u3} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u1, max u3 u2} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{max u2 u3} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))))) (algebraMap.{u1, max u2 u3} S (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) _inst_5 (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u3, u2, u1} Γ R _inst_1 _inst_4 S _inst_5 _inst_6)) x) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (RingHom.{u2, max u2 u3} (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) _x) (MulHomClass.toFunLike.{max u3 u2, u2, max u3 u2} (RingHom.{u2, max u2 u3} (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u2, u2, max u3 u2} (RingHom.{u2, max u2 u3} (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u2, u2, max u3 u2} (RingHom.{u2, max u2 u3} (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u2, max u3 u2} (PowerSeries.{u2} R) (HahnSeries.{u3, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u3} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u3, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u3} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (HahnSeries.ofPowerSeries.{u3, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_1) _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => PowerSeries.{u2} R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) S (PowerSeries.{u2} R) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) S (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u1, u2} S (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_5)) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (algebraMap.{u1, u2} S (PowerSeries.{u2} R) _inst_5 (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) _inst_6) x))
+Case conversion may be inaccurate. Consider using '#align hahn_series.algebra_map_apply' HahnSeries.algebraMap_apply'ₓ'. -/
theorem algebraMap_apply' (x : S) :
algebraMap S (HahnSeries Γ R) x = ofPowerSeries Γ R (algebraMap S (PowerSeries R) x) :=
rfl
#align hahn_series.algebra_map_apply' HahnSeries.algebraMap_apply'
+/- warning: polynomial.algebra_map_hahn_series_apply -> Polynomial.algebraMap_hahnSeries_apply is a dubious translation:
+lean 3 declaration is
+ forall (Γ : Type.{u1}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ] (f : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) => (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (algebraMap.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Polynomial.commSemiring.{u2} R _inst_1) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u1, u2, u2} Γ R _inst_1 _inst_4 (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1) (PowerSeries.algebraPolynomial.{u2, u2} R R _inst_1 _inst_1 (Algebra.id.{u2} R _inst_1)))) f) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => (PowerSeries.{u2} R) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.semiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_1) _inst_4) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) (HasLiftT.mk.{succ u2, succ u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) (CoeTCₓ.coe.{succ u2, succ u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) (coeBase.{succ u2, succ u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (PowerSeries.{u2} R) (Polynomial.coeToPowerSeries.{u2} R _inst_1)))) f))
+but is expected to have type
+ forall (Γ : Type.{u1}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ] (f : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)), Eq.{max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (fun (_x : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))))) (algebraMap.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Polynomial.commSemiring.{u2} R _inst_1) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u1, u2, u2} Γ R _inst_1 _inst_4 (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1) (PowerSeries.algebraPolynomial.{u2, u2} R R _inst_1 _inst_1 (Algebra.id.{u2} R _inst_1)))) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (fun (_x : PowerSeries.{u2} R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : PowerSeries.{u2} R) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u2} (PowerSeries.{u2} R) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (PowerSeries.{u2} R) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (PowerSeries.{u2} R) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toNonAssocSemiring.{u2} (PowerSeries.{u2} R) (PowerSeries.instSemiringPowerSeries.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (HahnSeries.ofPowerSeries.{u1, u2} Γ R (CommSemiring.toSemiring.{u2} R _inst_1) _inst_4) (Polynomial.ToPowerSeries.{u2} R _inst_1 f))
+Case conversion may be inaccurate. Consider using '#align polynomial.algebra_map_hahn_series_apply Polynomial.algebraMap_hahnSeries_applyₓ'. -/
@[simp]
theorem Polynomial.algebraMap_hahnSeries_apply (f : R[X]) :
algebraMap R[X] (HahnSeries Γ R) f = ofPowerSeries Γ R f :=
rfl
#align polynomial.algebra_map_hahn_series_apply Polynomial.algebraMap_hahnSeries_apply
+/- warning: polynomial.algebra_map_hahn_series_injective -> Polynomial.algebraMap_hahnSeries_injective is a dubious translation:
+lean 3 declaration is
+ forall (Γ : Type.{u1}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ], Function.Injective.{succ u2, max (succ u1) (succ u2)} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : RingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) => (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (algebraMap.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (Polynomial.commSemiring.{u2} R _inst_1) (HahnSeries.semiring.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u1, u2, u2} Γ R _inst_1 _inst_4 (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1) (PowerSeries.algebraPolynomial.{u2, u2} R R _inst_1 _inst_1 (Algebra.id.{u2} R _inst_1)))))
+but is expected to have type
+ forall (Γ : Type.{u1}) {R : Type.{u2}} [_inst_1 : CommSemiring.{u2} R] [_inst_4 : StrictOrderedSemiring.{u1} Γ], Function.Injective.{succ u2, max (succ u1) (succ u2)} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u2), succ u2, max (succ u1) (succ u2)} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (fun (_x : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) => HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) _x) (MulHomClass.toFunLike.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, max u1 u2} (RingHom.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)))) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.instRingHomClassRingHom.{u2, max u1 u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{max u2 u1} (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1))))))) (algebraMap.{u2, max u2 u1} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.{u1, u2} Γ R (StrictOrderedSemiring.toPartialOrder.{u1} Γ _inst_4) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1))) (Polynomial.commSemiring.{u2} R _inst_1) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} Γ _inst_4) (CommSemiring.toSemiring.{u2} R _inst_1)) (HahnSeries.powerSeriesAlgebra.{u1, u2, u2} Γ R _inst_1 _inst_4 (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (Polynomial.commSemiring.{u2} R _inst_1) (PowerSeries.algebraPolynomial.{u2, u2} R R _inst_1 _inst_1 (Algebra.id.{u2} R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align polynomial.algebra_map_hahn_series_injective Polynomial.algebraMap_hahnSeries_injectiveₓ'. -/
theorem Polynomial.algebraMap_hahnSeries_injective :
Function.Injective (algebraMap R[X] (HahnSeries Γ R)) :=
ofPowerSeries_injective.comp (Polynomial.coe_injective R)
@@ -1364,6 +1968,12 @@ section Valuation
variable (Γ R) [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
+/- warning: hahn_series.add_val -> HahnSeries.addVal is a dubious translation:
+lean 3 declaration is
+ forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)], AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))
+but is expected to have type
+ forall (Γ : Type.{u1}) (R : Type.{u2}) [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)], AddValuation.{max u2 u1, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_2)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))
+Case conversion may be inaccurate. Consider using '#align hahn_series.add_val HahnSeries.addValₓ'. -/
/-- The additive valuation on `hahn_series Γ R`, returning the smallest index at which
a Hahn Series has a nonzero coefficient, or `⊤` for the 0 series. -/
def addVal : AddValuation (HahnSeries Γ R) (WithTop Γ) :=
@@ -1390,16 +2000,34 @@ def addVal : AddValuation (HahnSeries Γ R) (WithTop Γ) :=
variable {Γ} {R}
+/- warning: hahn_series.add_val_apply -> HahnSeries.addVal_apply is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))}, Eq.{succ u1} (WithTop.{u1} Γ) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2)) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 _inst_2 _inst_3) x) (ite.{succ u1} (WithTop.{u1} Γ) (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))))))) (Classical.propDecidable (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))))))))) (Top.top.{u1} (WithTop.{u1} Γ) (WithTop.hasTop.{u1} Γ)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) Γ (WithTop.{u1} Γ) (HasLiftT.mk.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (CoeTCₓ.coe.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (WithTop.hasCoeT.{u1} Γ))) (HahnSeries.order.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))) x)))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : Ring.{u1} R] [_inst_3 : IsDomain.{u1} R (Ring.toSemiring.{u1} R _inst_2)] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))}, Eq.{succ u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 _inst_2 _inst_3) x) (ite.{succ u2} (WithTop.{u2} Γ) (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))))))) (Classical.propDecidable (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))))))) (Top.top.{u2} (WithTop.{u2} Γ) (WithTop.top.{u2} Γ)) (WithTop.some.{u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) x)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.add_val_apply HahnSeries.addVal_applyₓ'. -/
theorem addVal_apply {x : HahnSeries Γ R} :
addVal Γ R x = if x = (0 : HahnSeries Γ R) then (⊤ : WithTop Γ) else x.order :=
AddValuation.of_apply _
#align hahn_series.add_val_apply HahnSeries.addVal_apply
+/- warning: hahn_series.add_val_apply_of_ne -> HahnSeries.addVal_apply_of_ne is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))}, (Ne.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) x (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))))))) -> (Eq.{succ u1} (WithTop.{u1} Γ) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2)) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 _inst_2 _inst_3) x) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) Γ (WithTop.{u1} Γ) (HasLiftT.mk.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (CoeTCₓ.coe.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (WithTop.hasCoeT.{u1} Γ))) (HahnSeries.order.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))) x)))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : Ring.{u1} R] [_inst_3 : IsDomain.{u1} R (Ring.toSemiring.{u1} R _inst_2)] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))}, (Ne.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) x (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))))))) -> (Eq.{succ u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 _inst_2 _inst_3) x) (WithTop.some.{u2} Γ (HahnSeries.order.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))) (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) x)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.add_val_apply_of_ne HahnSeries.addVal_apply_of_neₓ'. -/
@[simp]
theorem addVal_apply_of_ne {x : HahnSeries Γ R} (hx : x ≠ 0) : addVal Γ R x = x.order :=
if_neg hx
#align hahn_series.add_val_apply_of_ne HahnSeries.addVal_apply_of_ne
+/- warning: hahn_series.add_val_le_of_coeff_ne_zero -> HahnSeries.addVal_le_of_coeff_ne_zero is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))} {g : Γ}, (Ne.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))) x g) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))))))) -> (LE.le.{u1} (WithTop.{u1} Γ) (Preorder.toHasLe.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2)) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 _inst_2 _inst_3) x) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) Γ (WithTop.{u1} Γ) (HasLiftT.mk.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (CoeTCₓ.coe.{succ u1, succ u1} Γ (WithTop.{u1} Γ) (WithTop.hasCoeT.{u1} Γ))) g))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : Ring.{u1} R] [_inst_3 : IsDomain.{u1} R (Ring.toSemiring.{u1} R _inst_2)] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))} {g : Γ}, (Ne.{succ u1} R (HahnSeries.coeff.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))) x g) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 _inst_2 _inst_3) x) (WithTop.some.{u2} Γ g))
+Case conversion may be inaccurate. Consider using '#align hahn_series.add_val_le_of_coeff_ne_zero HahnSeries.addVal_le_of_coeff_ne_zeroₓ'. -/
theorem addVal_le_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g ≠ 0) :
addVal Γ R x ≤ g :=
by
@@ -1409,6 +2037,12 @@ theorem addVal_le_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g
end Valuation
+/- warning: hahn_series.is_pwo_Union_support_powers -> HahnSeries.isPwo_iUnion_support_powers is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Ring.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_2)] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))}, (LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2)) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 _inst_2 _inst_3) x)) -> (Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))) (Set.iUnion.{u1, 1} Γ Nat (fun (n : Nat) => HahnSeries.support.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2))))) (HPow.hPow.{max u1 u2, 0, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) Nat (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (instHPow.{max u1 u2, 0} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) Nat (Monoid.Pow.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (Ring.toMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_2)))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) _inst_2)))) x n))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : Ring.{u1} R] [_inst_3 : IsDomain.{u1} R (Ring.toSemiring.{u1} R _inst_2)] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))}, (LT.lt.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) x) (WithTop.zero.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)))))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) _inst_2) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 _inst_2 _inst_3) x)) -> (Set.IsPwo.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))) (Set.iUnion.{u2, 1} Γ Nat (fun (n : Nat) => HahnSeries.support.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2))) (HPow.hPow.{max u2 u1, 0, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) Nat (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (instHPow.{max u2 u1, 0} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) Nat (Monoid.Pow.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (MonoidWithZero.toMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (Semiring.toMonoidWithZero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_2)))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (Ring.toSemiring.{u1} R _inst_2)))))) x n))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPwo_iUnion_support_powersₓ'. -/
theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
{x : HahnSeries Γ R} (hx : 0 < addVal Γ R x) : (⋃ n : ℕ, (x ^ n).support).IsPwo :=
by
@@ -1429,6 +2063,7 @@ section
variable (Γ) (R) [PartialOrder Γ] [AddCommMonoid R]
+#print HahnSeries.SummableFamily /-
/-- An infinite family of Hahn series which has a formal coefficient-wise sum.
The requirements for this are that the union of the supports of the series is well-founded,
and that only finitely many series are nonzero at any given coefficient. -/
@@ -1437,6 +2072,7 @@ structure SummableFamily (α : Type _) where
isPwo_iUnion_support' : Set.IsPwo (⋃ a : α, (to_fun a).support)
finite_co_support' : ∀ g : Γ, { a | (to_fun a).coeff g ≠ 0 }.Finite
#align hahn_series.summable_family HahnSeries.SummableFamily
+-/
end
@@ -1449,21 +2085,45 @@ variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
instance : CoeFun (SummableFamily Γ R α) fun _ => α → HahnSeries Γ R :=
⟨toFun⟩
+/- warning: hahn_series.summable_family.is_pwo_Union_support -> HahnSeries.SummableFamily.isPwo_iUnion_support is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α), Set.IsPwo.{u1} Γ (PartialOrder.toPreorder.{u1} Γ _inst_1) (Set.iUnion.{u1, succ u3} Γ α (fun (a : α) => HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a)))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} (s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α), Set.IsPwo.{u3} Γ (PartialOrder.toPreorder.{u3} Γ _inst_1) (Set.iUnion.{u3, succ u1} Γ α (fun (a : α) => HahnSeries.support.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s a)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.is_pwo_Union_support HahnSeries.SummableFamily.isPwo_iUnion_supportₓ'. -/
theorem isPwo_iUnion_support (s : SummableFamily Γ R α) : Set.IsPwo (⋃ a : α, (s a).support) :=
s.isPwo_iUnion_support'
#align hahn_series.summable_family.is_pwo_Union_support HahnSeries.SummableFamily.isPwo_iUnion_support
+/- warning: hahn_series.summable_family.finite_co_support -> HahnSeries.SummableFamily.finite_co_support is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (g : Γ), Set.Finite.{u3} α (Function.support.{u3, u2} α R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (fun (a : α) => HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a) g))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} (s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (g : Γ), Set.Finite.{u1} α (Function.support.{u1, u2} α R (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (fun (a : α) => HahnSeries.coeff.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s a) g))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.finite_co_support HahnSeries.SummableFamily.finite_co_supportₓ'. -/
theorem finite_co_support (s : SummableFamily Γ R α) (g : Γ) :
(Function.support fun a => (s a).coeff g).Finite :=
s.finite_co_support' g
#align hahn_series.summable_family.finite_co_support HahnSeries.SummableFamily.finite_co_support
+/- warning: hahn_series.summable_family.coe_injective -> HahnSeries.SummableFamily.coe_injective is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, Function.Injective.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (ᾰ : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, Function.Injective.{max (max (succ u3) (succ u2)) (succ u1), max (max (succ u1) (succ u2)) (succ u3)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α)
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_injective HahnSeries.SummableFamily.coe_injectiveₓ'. -/
theorem coe_injective : @Function.Injective (SummableFamily Γ R α) (α → HahnSeries Γ R) coeFn
| ⟨f1, hU1, hf1⟩, ⟨f2, hU2, hf2⟩, h => by
change f1 = f2 at h
subst h
#align hahn_series.summable_family.coe_injective HahnSeries.SummableFamily.coe_injective
+/- warning: hahn_series.summable_family.ext -> HahnSeries.SummableFamily.ext is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α}, (forall (a : α), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) t a)) -> (Eq.{max (succ u1) (succ u2) (succ u3)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s t)
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α}, (forall (a : α), Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s a) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α t a)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) s t)
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.ext HahnSeries.SummableFamily.extₓ'. -/
@[ext]
theorem ext {s t : SummableFamily Γ R α} (h : ∀ a : α, s a = t a) : s = t :=
coe_injective <| funext h
@@ -1492,20 +2152,44 @@ instance : Zero (SummableFamily Γ R α) :=
instance : Inhabited (SummableFamily Γ R α) :=
⟨0⟩
+/- warning: hahn_series.summable_family.coe_add -> HahnSeries.SummableFamily.coe_add is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α}, Eq.{succ (max u3 u1 u2)} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (coeFn.{succ (max u1 u2 u3), succ (max u3 u1 u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HAdd.hAdd.{max u1 u2 u3, max u1 u2 u3, max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (instHAdd.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasAdd.{u1, u2, u3} Γ R _inst_1 _inst_2 α)) s t)) (HAdd.hAdd.{max u3 u1 u2, max u3 u1 u2, max u3 u1 u2} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (instHAdd.{max u3 u1 u2} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (Pi.instAdd.{u3, max u1 u2} α (fun (ᾰ : α) => HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (fun (i : α) => HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) t))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α}, Eq.{max (max (succ u3) (succ u2)) (succ u1)} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α (HAdd.hAdd.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (instHAdd.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.instAddSummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α)) s t)) (HAdd.hAdd.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (instHAdd.{max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (Pi.instAdd.{u1, max u3 u2} α (fun (ᾰ : α) => HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (fun (i : α) => HahnSeries.instAddHahnSeriesToZero.{u3, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α t))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_add HahnSeries.SummableFamily.coe_addₓ'. -/
@[simp]
theorem coe_add {s t : SummableFamily Γ R α} : ⇑(s + t) = s + t :=
rfl
#align hahn_series.summable_family.coe_add HahnSeries.SummableFamily.coe_add
+/- warning: hahn_series.summable_family.add_apply -> HahnSeries.SummableFamily.add_apply is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HAdd.hAdd.{max u1 u2 u3, max u1 u2 u3, max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (instHAdd.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasAdd.{u1, u2, u3} Γ R _inst_1 _inst_2 α)) s t) a) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) t a))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {a : α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α (HAdd.hAdd.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (instHAdd.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.instAddSummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α)) s t) a) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (instHAdd.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instAddHahnSeriesToZero.{u3, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s a) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α t a))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.add_apply HahnSeries.SummableFamily.add_applyₓ'. -/
theorem add_apply {s t : SummableFamily Γ R α} {a : α} : (s + t) a = s a + t a :=
rfl
#align hahn_series.summable_family.add_apply HahnSeries.SummableFamily.add_apply
+/- warning: hahn_series.summable_family.coe_zero -> HahnSeries.SummableFamily.coe_zero is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, Eq.{max (succ u3) (succ u1) (succ u2)} ((fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (OfNat.ofNat.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (OfNat.mk.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (OfNat.ofNat.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (OfNat.mk.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α))))) (OfNat.ofNat.{max u3 u1 u2} ((fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α))) 0 (OfNat.mk.{max u3 u1 u2} ((fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α))) 0 (Zero.zero.{max u3 u1 u2} ((fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α))) (Pi.instZero.{u3, max u1 u2} α (fun (ᾰ : α) => HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (fun (i : α) => HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))))))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}}, Eq.{max (max (succ u3) (succ u2)) (succ u1)} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α (OfNat.ofNat.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) 0 (Zero.toOfNat0.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.instZeroSummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α)))) (OfNat.ofNat.{max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (Zero.toOfNat0.{max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (Pi.instZero.{u1, max u3 u2} α (fun (a._@.Mathlib.RingTheory.HahnSeries._hyg.12821 : α) => HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (fun (i : α) => HahnSeries.instZeroHahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_zero HahnSeries.SummableFamily.coe_zeroₓ'. -/
@[simp]
theorem coe_zero : ((0 : SummableFamily Γ R α) : α → HahnSeries Γ R) = 0 :=
rfl
#align hahn_series.summable_family.coe_zero HahnSeries.SummableFamily.coe_zero
+/- warning: hahn_series.summable_family.zero_apply -> HahnSeries.SummableFamily.zero_apply is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (OfNat.ofNat.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (OfNat.mk.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) 0 (Zero.zero.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasZero.{u1, u2, u3} Γ R _inst_1 _inst_2 α)))) a) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {a : α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α (OfNat.ofNat.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) 0 (Zero.toOfNat0.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.instZeroSummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α))) a) (OfNat.ofNat.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) 0 (Zero.toOfNat0.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.zero_apply HahnSeries.SummableFamily.zero_applyₓ'. -/
theorem zero_apply {a : α} : (0 : SummableFamily Γ R α) a = 0 :=
rfl
#align hahn_series.summable_family.zero_apply HahnSeries.SummableFamily.zero_apply
@@ -1527,6 +2211,12 @@ instance : AddCommMonoid (SummableFamily Γ R α)
ext
apply add_assoc
+/- warning: hahn_series.summable_family.hsum -> HahnSeries.SummableFamily.hsum is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum HahnSeries.SummableFamily.hsumₓ'. -/
/-- The infinite sum of a `summable_family` of Hahn series. -/
def hsum (s : SummableFamily Γ R α) : HahnSeries Γ R
where
@@ -1540,11 +2230,23 @@ def hsum (s : SummableFamily Γ R α) : HahnSeries Γ R
rw [finsum_congr h, finsum_zero]
#align hahn_series.summable_family.hsum HahnSeries.SummableFamily.hsum
+/- warning: hahn_series.summable_family.hsum_coeff -> HahnSeries.SummableFamily.hsum_coeff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {g : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α s) g) (finsum.{u2, succ u3} R α _inst_2 (fun (i : α) => HahnSeries.coeff.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s i) g))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {g : Γ}, Eq.{succ u2} R (HahnSeries.coeff.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R _inst_1 _inst_2 α s) g) (finsum.{u2, succ u1} R α _inst_2 (fun (i : α) => HahnSeries.coeff.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s i) g))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_coeff HahnSeries.SummableFamily.hsum_coeffₓ'. -/
@[simp]
theorem hsum_coeff {s : SummableFamily Γ R α} {g : Γ} : s.hsum.coeff g = ∑ᶠ i, (s i).coeff g :=
rfl
#align hahn_series.summable_family.hsum_coeff HahnSeries.SummableFamily.hsum_coeff
+/- warning: hahn_series.summable_family.support_hsum_subset -> HahnSeries.SummableFamily.support_hsum_subset is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α}, HasSubset.Subset.{u1} (Set.{u1} Γ) (Set.hasSubset.{u1} Γ) (HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α s)) (Set.iUnion.{u1, succ u3} Γ α (fun (a : α) => HahnSeries.support.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a)))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α}, HasSubset.Subset.{u3} (Set.{u3} Γ) (Set.instHasSubsetSet.{u3} Γ) (HahnSeries.support.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R _inst_1 _inst_2 α s)) (Set.iUnion.{u3, succ u1} Γ α (fun (a : α) => HahnSeries.support.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 _inst_2 α s a)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.support_hsum_subset HahnSeries.SummableFamily.support_hsum_subsetₓ'. -/
theorem support_hsum_subset {s : SummableFamily Γ R α} : s.hsum.support ⊆ ⋃ a : α, (s a).support :=
fun g hg =>
by
@@ -1554,6 +2256,12 @@ theorem support_hsum_subset {s : SummableFamily Γ R α} : s.hsum.support ⊆
exact ⟨a, h2⟩
#align hahn_series.summable_family.support_hsum_subset HahnSeries.SummableFamily.support_hsum_subset
+/- warning: hahn_series.summable_family.hsum_add -> HahnSeries.SummableFamily.hsum_add is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α (HAdd.hAdd.{max u1 u2 u3, max u1 u2 u3, max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (instHAdd.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.hasAdd.{u1, u2, u3} Γ R _inst_1 _inst_2 α)) s t)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (instHAdd.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasAdd.{u1, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α s) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α t))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R _inst_1 _inst_2 α (HAdd.hAdd.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (instHAdd.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.instAddSummableFamily.{u3, u2, u1} Γ R _inst_1 _inst_2 α)) s t)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (instHAdd.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instAddHahnSeriesToZero.{u3, u2} Γ R _inst_1 (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R _inst_1 _inst_2 α s) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R _inst_1 _inst_2 α t))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_add HahnSeries.SummableFamily.hsum_addₓ'. -/
@[simp]
theorem hsum_add {s t : SummableFamily Γ R α} : (s + t).hsum = s.hsum + t.hsum :=
by
@@ -1584,20 +2292,44 @@ instance : AddCommGroup (SummableFamily Γ R α) :=
ext
apply add_left_neg }
+/- warning: hahn_series.summable_family.coe_neg -> HahnSeries.SummableFamily.coe_neg is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α}, Eq.{succ (max u3 u1 u2)} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (coeFn.{succ (max u1 u2 u3), succ (max u3 u1 u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (Neg.neg.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toHasNeg.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.addCommGroup.{u1, u2, u3} Γ R _inst_1 _inst_2 α)))) s)) (Neg.neg.{max u3 u1 u2} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (Pi.instNeg.{u3, max u1 u2} α (fun (ᾰ : α) => HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (fun (i : α) => SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddCommGroup.toAddGroup.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.addCommGroup.{u1, u2} Γ R _inst_1 _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) s))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α}, Eq.{max (max (succ u3) (succ u2)) (succ u1)} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α (Neg.neg.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (NegZeroClass.toNeg.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegZeroMonoid.toNegZeroClass.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubtractionMonoid.toSubNegZeroMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubtractionCommMonoid.toSubtractionMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toDivisionAddCommMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u3, u2, u1} Γ R _inst_1 _inst_2 α)))))) s)) (Neg.neg.{max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (Pi.instNeg.{u1, max u3 u2} α (fun (ᾰ : α) => HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (fun (i : α) => NegZeroClass.toNeg.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubNegZeroMonoid.toNegZeroClass.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubtractionMonoid.toSubNegZeroMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubtractionCommMonoid.toSubtractionMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (AddCommGroup.toDivisionAddCommMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.instAddCommGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoidToDivisionAddCommMonoid.{u3, u2} Γ R _inst_1 _inst_2))))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α s))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_neg HahnSeries.SummableFamily.coe_negₓ'. -/
@[simp]
theorem coe_neg : ⇑(-s) = -s :=
rfl
#align hahn_series.summable_family.coe_neg HahnSeries.SummableFamily.coe_neg
+/- warning: hahn_series.summable_family.neg_apply -> HahnSeries.SummableFamily.neg_apply is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (Neg.neg.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toHasNeg.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.addCommGroup.{u1, u2, u3} Γ R _inst_1 _inst_2 α)))) s) a) (Neg.neg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasNeg.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 (AddCommGroup.toAddGroup.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) s a))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {a : α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α (Neg.neg.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (NegZeroClass.toNeg.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegZeroMonoid.toNegZeroClass.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubtractionMonoid.toSubNegZeroMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubtractionCommMonoid.toSubtractionMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toDivisionAddCommMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u3, u2, u1} Γ R _inst_1 _inst_2 α)))))) s) a) (Neg.neg.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (NegZeroClass.toNeg.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubNegZeroMonoid.toNegZeroClass.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubtractionMonoid.toSubNegZeroMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubtractionCommMonoid.toSubtractionMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (AddCommGroup.toDivisionAddCommMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.instAddCommGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoidToDivisionAddCommMonoid.{u3, u2} Γ R _inst_1 _inst_2)))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α s a))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.neg_apply HahnSeries.SummableFamily.neg_applyₓ'. -/
theorem neg_apply : (-s) a = -s a :=
rfl
#align hahn_series.summable_family.neg_apply HahnSeries.SummableFamily.neg_apply
+/- warning: hahn_series.summable_family.coe_sub -> HahnSeries.SummableFamily.coe_sub is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α}, Eq.{succ (max u3 u1 u2)} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (coeFn.{succ (max u1 u2 u3), succ (max u3 u1 u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HSub.hSub.{max u1 u2 u3, max u1 u2 u3, max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (instHSub.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toHasSub.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.addCommGroup.{u1, u2, u3} Γ R _inst_1 _inst_2 α))))) s t)) (HSub.hSub.{max u3 u1 u2, max u3 u1 u2, max u3 u1 u2} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (instHSub.{max u3 u1 u2} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (Pi.instSub.{u3, max u1 u2} α (fun (ᾰ : α) => HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (fun (i : α) => SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddCommGroup.toAddGroup.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.addCommGroup.{u1, u2} Γ R _inst_1 _inst_2)))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) s) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) t))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α}, Eq.{max (max (succ u3) (succ u2)) (succ u1)} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α (HSub.hSub.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (instHSub.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toSub.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u3, u2, u1} Γ R _inst_1 _inst_2 α))))) s t)) (HSub.hSub.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (instHSub.{max (max u3 u2) u1} (α -> (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (Pi.instSub.{u1, max u3 u2} α (fun (ᾰ : α) => HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (fun (i : α) => SubNegMonoid.toSub.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (AddGroup.toSubNegMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u3, u2} Γ R _inst_1 (AddCommGroup.toAddGroup.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α s) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α t))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_sub HahnSeries.SummableFamily.coe_subₓ'. -/
@[simp]
theorem coe_sub : ⇑(s - t) = s - t :=
rfl
#align hahn_series.summable_family.coe_sub HahnSeries.SummableFamily.coe_sub
+/- warning: hahn_series.summable_family.sub_apply -> HahnSeries.SummableFamily.sub_apply is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u3}} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {t : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HSub.hSub.{max u1 u2 u3, max u1 u2 u3, max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (instHSub.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toHasSub.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max u1 u2 u3} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.addCommGroup.{u1, u2, u3} Γ R _inst_1 _inst_2 α))))) s t) a) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (instHSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2))))) (HahnSeries.addGroup.{u1, u2} Γ R _inst_1 (AddCommGroup.toAddGroup.{u2} R _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) s a) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) t a))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u3} Γ] [_inst_2 : AddCommGroup.{u2} R] {α : Type.{u1}} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {t : HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α} {a : α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α (HSub.hSub.{max (max u3 u2) u1, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (instHSub.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (SubNegMonoid.toSub.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddGroup.toSubNegMonoid.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (AddCommGroup.toAddGroup.{max (max u3 u2) u1} (HahnSeries.SummableFamily.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u3, u2, u1} Γ R _inst_1 _inst_2 α))))) s t) a) (HSub.hSub.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (instHSub.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (SubNegMonoid.toSub.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (AddGroup.toSubNegMonoid.{max u3 u2} (HahnSeries.{u3, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R _inst_2)))) (HahnSeries.instAddGroupHahnSeriesToZeroToNegZeroClassToSubNegZeroMonoidToSubtractionMonoid.{u3, u2} Γ R _inst_1 (AddCommGroup.toAddGroup.{u2} R _inst_2))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α s a) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R _inst_1 (AddCommGroup.toAddCommMonoid.{u2} R _inst_2) α t a))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.sub_apply HahnSeries.SummableFamily.sub_applyₓ'. -/
theorem sub_apply : (s - t) a = s a - t a :=
rfl
#align hahn_series.summable_family.sub_apply HahnSeries.SummableFamily.sub_apply
@@ -1631,6 +2363,12 @@ instance : SMul (HahnSeries Γ R) (SummableFamily Γ R α)
is_pwo_support, Prod.exists]
exact ⟨i, j, mem_coe.2 (mem_add_antidiagonal.2 ⟨hi, Set.mem_iUnion.2 ⟨a, hj⟩, rfl⟩), hj⟩ }
+/- warning: hahn_series.summable_family.smul_apply -> HahnSeries.SummableFamily.smul_apply is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u3}} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α} {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) => α -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (SMul.smul.{max u1 u2, max u1 u2 u3} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.hasSmul.{u1, u2, u3} Γ R _inst_1 _inst_2 α) x s) a) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) x (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) => α -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) s a))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u3} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u1}} {x : HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α} {a : α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α (HSMul.hSMul.{max u3 u2, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (instHSMul.{max u3 u2, max (max u3 u2) u1} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.instSMulHahnSeriesToPartialOrderToZeroToMonoidWithZeroSummableFamilyToAddCommMonoidToNonUnitalNonAssocSemiringToNonAssocSemiring.{u3, u2, u1} Γ R _inst_1 _inst_2 α)) x s) a) (HMul.hMul.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (instHMul.{max u3 u2} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u3, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) x (HahnSeries.SummableFamily.toFun.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α s a))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.smul_apply HahnSeries.SummableFamily.smul_applyₓ'. -/
@[simp]
theorem smul_apply {x : HahnSeries Γ R} {s : SummableFamily Γ R α} {a : α} : (x • s) a = x * s a :=
rfl
@@ -1646,6 +2384,12 @@ instance : Module (HahnSeries Γ R) (SummableFamily Γ R α)
smul_add x s t := ext fun a => mul_add _ _ _
mul_smul x y s := ext fun a => mul_assoc _ _ _
+/- warning: hahn_series.summable_family.hsum_smul -> HahnSeries.SummableFamily.hsum_smul is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u3}} {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))} {s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α (SMul.smul.{max u1 u2, max u1 u2 u3} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.hasSmul.{u1, u2, u3} Γ R _inst_1 _inst_2 α) x s)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))))) (HahnSeries.hasMul.{u1, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) x (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α s))
+but is expected to have type
+ forall {Γ : Type.{u3}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u3} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u1}} {x : HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))} {s : HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α}, Eq.{max (succ u3) (succ u2)} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α (HSMul.hSMul.{max u3 u2, max (max u3 u2) u1, max (max u3 u2) u1} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (instHSMul.{max u3 u2, max (max u3 u2) u1} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.SummableFamily.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.SummableFamily.instSMulHahnSeriesToPartialOrderToZeroToMonoidWithZeroSummableFamilyToAddCommMonoidToNonUnitalNonAssocSemiringToNonAssocSemiring.{u3, u2, u1} Γ R _inst_1 _inst_2 α)) x s)) (HMul.hMul.{max u3 u2, max u3 u2, max u3 u2} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))))) (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (instHMul.{max u3 u2} (HahnSeries.{u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u3, u2} Γ R _inst_1 (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) x (HahnSeries.SummableFamily.hsum.{u3, u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u3} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α s))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_smul HahnSeries.SummableFamily.hsum_smulₓ'. -/
@[simp]
theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s).hsum = x * s.hsum :=
by
@@ -1680,6 +2424,12 @@ theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s)
MulZeroClass.mul_zero]
#align hahn_series.summable_family.hsum_smul HahnSeries.SummableFamily.hsum_smul
+/- warning: hahn_series.summable_family.lsum -> HahnSeries.SummableFamily.lsum is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u3}}, LinearMap.{max u1 u2, max u1 u2, max u1 u2 u3, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.semiring.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.semiring.{u1, u2} Γ R _inst_1 _inst_2) (RingHom.id.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (Semiring.toNonAssocSemiring.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.semiring.{u1, u2} Γ R _inst_1 _inst_2))) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.SummableFamily.addCommMonoid.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.addCommMonoid.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.SummableFamily.module.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (Semiring.toModule.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))))) (HahnSeries.semiring.{u1, u2} Γ R _inst_1 _inst_2))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : Semiring.{u2} R] {α : Type.{u3}}, LinearMap.{max u1 u2, max u1 u2, max (max u3 u2) u1, max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R _inst_1 _inst_2) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R _inst_1 _inst_2) (RingHom.id.{max u2 u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u1, u2} Γ R _inst_1 (Semiring.toNonAssocSemiring.{u2} R _inst_2))) (HahnSeries.SummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.SummableFamily.instAddCommMonoidSummableFamily.{u1, u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2))) α) (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_2)))) (HahnSeries.SummableFamily.instModuleHahnSeriesToPartialOrderToZeroToMonoidWithZeroSummableFamilyToAddCommMonoidToNonUnitalNonAssocSemiringToNonAssocSemiringInstSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZeroInstAddCommMonoidSummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (Semiring.toModule.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_2))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u1, u2} Γ R _inst_1 _inst_2))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.lsum HahnSeries.SummableFamily.lsumₓ'. -/
/-- The summation of a `summable_family` as a `linear_map`. -/
@[simps]
def lsum : SummableFamily Γ R α →ₗ[HahnSeries Γ R] HahnSeries Γ R
@@ -1689,6 +2439,12 @@ def lsum : SummableFamily Γ R α →ₗ[HahnSeries Γ R] HahnSeries Γ R
map_smul' _ _ := hsum_smul
#align hahn_series.summable_family.lsum HahnSeries.SummableFamily.lsum
+/- warning: hahn_series.summable_family.hsum_sub -> HahnSeries.SummableFamily.hsum_sub is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} [_inst_1 : OrderedCancelAddCommMonoid.{u1} Γ] {α : Type.{u2}} {R : Type.{u3}} [_inst_3 : Ring.{u3} R] {s : HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α} {t : HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α}, Eq.{max (succ u1) (succ u3)} (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (HahnSeries.SummableFamily.hsum.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α (HSub.hSub.{max u1 u3 u2, max u1 u3 u2, max u1 u3 u2} (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (instHSub.{max u1 u3 u2} (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (SubNegMonoid.toHasSub.{max u1 u3 u2} (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (AddGroup.toSubNegMonoid.{max u1 u3 u2} (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (AddCommGroup.toAddGroup.{max u1 u3 u2} (HahnSeries.SummableFamily.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.addCommGroup.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))) α))))) s t)) (HSub.hSub.{max u1 u3, max u1 u3, max u1 u3} (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (instHSub.{max u1 u3} (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (SubNegMonoid.toHasSub.{max u1 u3} (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (AddGroup.toSubNegMonoid.{max u1 u3} (HahnSeries.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u3} R (AddMonoid.toAddZeroClass.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))))))) (HahnSeries.addGroup.{u1, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddGroupWithOne.toAddGroup.{u3} R (AddCommGroupWithOne.toAddGroupWithOne.{u3} R (Ring.toAddCommGroupWithOne.{u3} R _inst_3))))))) (HahnSeries.SummableFamily.hsum.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α s) (HahnSeries.SummableFamily.hsum.{u1, u3, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ _inst_1) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α t))
+but is expected to have type
+ forall {Γ : Type.{u2}} [_inst_1 : OrderedCancelAddCommMonoid.{u2} Γ] {α : Type.{u1}} {R : Type.{u3}} [_inst_3 : Ring.{u3} R] {s : HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α} {t : HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α}, Eq.{max (succ u2) (succ u3)} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (HahnSeries.SummableFamily.hsum.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α (HSub.hSub.{max (max u2 u1) u3, max (max u2 u1) u3, max (max u2 u1) u3} (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (instHSub.{max (max u2 u1) u3} (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (SubNegMonoid.toSub.{max (max u2 u1) u3} (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (AddGroup.toSubNegMonoid.{max (max u2 u1) u3} (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (AddCommGroup.toAddGroup.{max (max u2 u1) u3} (HahnSeries.SummableFamily.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (Ring.toAddCommGroup.{u3} R _inst_3) α))))) s t)) (HSub.hSub.{max u2 u3, max u2 u3, max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (instHSub.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (Ring.toSub.{max u2 u3} (HahnSeries.{u2, u3} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3))))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u3} Γ R _inst_1 _inst_3))) (HahnSeries.SummableFamily.hsum.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α s) (HahnSeries.SummableFamily.hsum.{u2, u3, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R _inst_3)))) α t))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_sub HahnSeries.SummableFamily.hsum_subₓ'. -/
@[simp]
theorem hsum_sub {R : Type _} [Ring R] {s t : SummableFamily Γ R α} :
(s - t).hsum = s.hsum - t.hsum := by
@@ -1701,6 +2457,12 @@ section OfFinsupp
variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
+/- warning: hahn_series.summable_family.of_finsupp -> HahnSeries.SummableFamily.ofFinsupp is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, (Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) -> (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α)
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}}, (Finsupp.{u3, max u2 u1} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) -> (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α)
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.of_finsupp HahnSeries.SummableFamily.ofFinsuppₓ'. -/
/-- A family with only finitely many nonzero elements is summable. -/
def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α
where
@@ -1723,11 +2485,23 @@ def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α
simp [ha]
#align hahn_series.summable_family.of_finsupp HahnSeries.SummableFamily.ofFinsupp
+/- warning: hahn_series.summable_family.coe_of_finsupp -> HahnSeries.SummableFamily.coe_ofFinsupp is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {f : Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))}, Eq.{max (succ u3) (succ u1) (succ u2)} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (HahnSeries.SummableFamily.ofFinsupp.{u1, u2, u3} Γ R _inst_1 _inst_2 α f)) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (fun (_x : Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (Finsupp.coeFun.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) f)
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {f : Finsupp.{u3, max u2 u1} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))}, Eq.{max (max (succ u1) (succ u2)) (succ u3)} (α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.toFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α (HahnSeries.SummableFamily.ofFinsupp.{u1, u2, u3} Γ R _inst_1 _inst_2 α f)) (FunLike.coe.{max (succ u3) (succ (max u1 u2)), succ u3, succ (max u1 u2)} (Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : α) => HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) _x) (Finsupp.funLike.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) f)
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_of_finsupp HahnSeries.SummableFamily.coe_ofFinsuppₓ'. -/
@[simp]
theorem coe_ofFinsupp {f : α →₀ HahnSeries Γ R} : ⇑(SummableFamily.ofFinsupp f) = f :=
rfl
#align hahn_series.summable_family.coe_of_finsupp HahnSeries.SummableFamily.coe_ofFinsupp
+/- warning: hahn_series.summable_family.hsum_of_finsupp -> HahnSeries.SummableFamily.hsum_ofFinsupp is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {f : Finsupp.{u3, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α (HahnSeries.SummableFamily.ofFinsupp.{u1, u2, u3} Γ R _inst_1 _inst_2 α f)) (Finsupp.sum.{u3, max u1 u2, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.addCommMonoid.{u1, u2} Γ R _inst_1 _inst_2) f (fun (a : α) => id.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))))
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {f : Finsupp.{u3, max u2 u1} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α (HahnSeries.SummableFamily.ofFinsupp.{u1, u2, u3} Γ R _inst_1 _inst_2 α f)) (Finsupp.sum.{u3, max u1 u2, max u1 u2} α (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))) (HahnSeries.instAddCommMonoidHahnSeriesToZeroToAddMonoid.{u1, u2} Γ R _inst_1 _inst_2) f (fun (a : α) => id.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_of_finsupp HahnSeries.SummableFamily.hsum_ofFinsuppₓ'. -/
@[simp]
theorem hsum_ofFinsupp {f : α →₀ HahnSeries Γ R} : (ofFinsupp f).hsum = f.Sum fun a => id :=
by
@@ -1747,6 +2521,7 @@ section EmbDomain
variable [PartialOrder Γ] [AddCommMonoid R] {α β : Type _}
+#print HahnSeries.SummableFamily.embDomain /-
/-- A summable family can be reindexed by an embedding without changing its sum. -/
def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R β
where
@@ -1769,14 +2544,27 @@ def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R
· contrapose! h
simp only [Ne.def, Set.mem_setOf_eq, dif_neg hb, Classical.not_not, zero_coeff])
#align hahn_series.summable_family.emb_domain HahnSeries.SummableFamily.embDomain
+-/
variable (s : SummableFamily Γ R α) (f : α ↪ β) {a : α} {b : β}
+/- warning: hahn_series.summable_family.emb_domain_apply -> HahnSeries.SummableFamily.embDomain_apply is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {β : Type.{u4}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u3, succ u4} α β) {b : β}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u4), max (succ u4) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) => β -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (HahnSeries.SummableFamily.embDomain.{u1, u2, u3, u4} Γ R _inst_1 _inst_2 α β s f) b) (dite.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (Membership.Mem.{u4, u4} β (Set.{u4} β) (Set.hasMem.{u4} β) b (Set.range.{u4, succ u3} β α (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f))) (Classical.propDecidable (Membership.Mem.{u4, u4} β (Set.{u4} β) (Set.hasMem.{u4} β) b (Set.range.{u4, succ u3} β α (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f)))) (fun (h : Membership.Mem.{u4, u4} β (Set.{u4} β) (Set.hasMem.{u4} β) b (Set.range.{u4, succ u3} β α (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f))) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s (Classical.choose.{succ u3} α (fun (y : α) => Eq.{succ u4} β (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f y) b) h)) (fun (h : Not (Membership.Mem.{u4, u4} β (Set.{u4} β) (Set.hasMem.{u4} β) b (Set.range.{u4, succ u3} β α (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f)))) => OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))))))
+but is expected to have type
+ forall {Γ : Type.{u4}} {R : Type.{u3}} [_inst_1 : PartialOrder.{u4} Γ] [_inst_2 : AddCommMonoid.{u3} R] {α : Type.{u1}} {β : Type.{u2}} (s : HahnSeries.SummableFamily.{u4, u3, u1} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u1, succ u2} α β) {b : β}, Eq.{max (succ u4) (succ u3)} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u4, u3, u2} Γ R _inst_1 _inst_2 β (HahnSeries.SummableFamily.embDomain.{u4, u3, u1, u2} Γ R _inst_1 _inst_2 α β s f) b) (dite.{max (succ u4) (succ u3)} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) (Membership.mem.{u2, u2} β (Set.{u2} β) (Set.instMembershipSet.{u2} β) b (Set.range.{u2, succ u1} β α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f))) (Classical.propDecidable (Membership.mem.{u2, u2} β (Set.{u2} β) (Set.instMembershipSet.{u2} β) b (Set.range.{u2, succ u1} β α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f)))) (fun (h : Membership.mem.{u2, u2} β (Set.{u2} β) (Set.instMembershipSet.{u2} β) b (Set.range.{u2, succ u1} β α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f))) => HahnSeries.SummableFamily.toFun.{u4, u3, u1} Γ R _inst_1 _inst_2 α s (Classical.choose.{succ u1} α (fun (y : α) => Eq.{succ u2} β (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f y) b) h)) (fun (h : Not (Membership.mem.{u2, u2} β (Set.{u2} β) (Set.instMembershipSet.{u2} β) b (Set.range.{u2, succ u1} β α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f)))) => OfNat.ofNat.{max u4 u3} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) 0 (Zero.toOfNat0.{max u4 u3} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.emb_domain_apply HahnSeries.SummableFamily.embDomain_applyₓ'. -/
theorem embDomain_apply :
s.embDomain f b = if h : b ∈ Set.range f then s (Classical.choose h) else 0 :=
rfl
#align hahn_series.summable_family.emb_domain_apply HahnSeries.SummableFamily.embDomain_apply
+/- warning: hahn_series.summable_family.emb_domain_image -> HahnSeries.SummableFamily.embDomain_image is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {β : Type.{u4}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u3, succ u4} α β) {a : α}, Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u4), max (succ u4) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) => β -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (HahnSeries.SummableFamily.embDomain.{u1, u2, u3, u4} Γ R _inst_1 _inst_2 α β s f) (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f a)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) => α -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u3} Γ R _inst_1 _inst_2 α) s a)
+but is expected to have type
+ forall {Γ : Type.{u4}} {R : Type.{u3}} [_inst_1 : PartialOrder.{u4} Γ] [_inst_2 : AddCommMonoid.{u3} R] {α : Type.{u1}} {β : Type.{u2}} (s : HahnSeries.SummableFamily.{u4, u3, u1} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u1, succ u2} α β) {a : α}, Eq.{max (succ u4) (succ u3)} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u4, u3, u2} Γ R _inst_1 _inst_2 β (HahnSeries.SummableFamily.embDomain.{u4, u3, u1, u2} Γ R _inst_1 _inst_2 α β s f) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u1) (succ u2), succ u1, succ u2} (Function.Embedding.{succ u1, succ u2} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u1, succ u2} α β)) f a)) (HahnSeries.SummableFamily.toFun.{u4, u3, u1} Γ R _inst_1 _inst_2 α s a)
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.emb_domain_image HahnSeries.SummableFamily.embDomain_imageₓ'. -/
@[simp]
theorem embDomain_image : s.embDomain f (f a) = s a :=
by
@@ -1784,11 +2572,23 @@ theorem embDomain_image : s.embDomain f (f a) = s a :=
exact congr rfl (f.injective (Classical.choose_spec (Set.mem_range_self a)))
#align hahn_series.summable_family.emb_domain_image HahnSeries.SummableFamily.embDomain_image
+/- warning: hahn_series.summable_family.emb_domain_notin_range -> HahnSeries.SummableFamily.embDomain_notin_range is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {β : Type.{u4}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u3, succ u4} α β) {b : β}, (Not (Membership.Mem.{u4, u4} β (Set.{u4} β) (Set.hasMem.{u4} β) b (Set.range.{u4, succ u3} β α (coeFn.{max 1 (succ u3) (succ u4), max (succ u3) (succ u4)} (Function.Embedding.{succ u3, succ u4} α β) (fun (_x : Function.Embedding.{succ u3, succ u4} α β) => α -> β) (Function.Embedding.hasCoeToFun.{succ u3, succ u4} α β) f)))) -> (Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (coeFn.{max (succ u1) (succ u2) (succ u4), max (succ u4) (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (fun (_x : HahnSeries.SummableFamily.{u1, u2, u4} Γ R _inst_1 _inst_2 β) => β -> (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, u4} Γ R _inst_1 _inst_2 β) (HahnSeries.SummableFamily.embDomain.{u1, u2, u3, u4} Γ R _inst_1 _inst_2 α β s f) b) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) 0 (Zero.zero.{max u1 u2} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.hasZero.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2))))))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : PartialOrder.{u2} Γ] [_inst_2 : AddCommMonoid.{u1} R] {α : Type.{u3}} {β : Type.{u4}} (s : HahnSeries.SummableFamily.{u2, u1, u3} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u3, succ u4} α β) {b : β}, (Not (Membership.mem.{u4, u4} β (Set.{u4} β) (Set.instMembershipSet.{u4} β) b (Set.range.{u4, succ u3} β α (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Function.Embedding.{succ u3, succ u4} α β) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u3) (succ u4), succ u3, succ u4} (Function.Embedding.{succ u3, succ u4} α β) α β (Function.instEmbeddingLikeEmbedding.{succ u3, succ u4} α β)) f)))) -> (Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R _inst_2))) (HahnSeries.SummableFamily.toFun.{u2, u1, u4} Γ R _inst_1 _inst_2 β (HahnSeries.SummableFamily.embDomain.{u2, u1, u3, u4} Γ R _inst_1 _inst_2 α β s f) b) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R _inst_2))) 0 (Zero.toOfNat0.{max u2 u1} (HahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R _inst_2))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R _inst_1 (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R _inst_2))))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.emb_domain_notin_range HahnSeries.SummableFamily.embDomain_notin_rangeₓ'. -/
@[simp]
theorem embDomain_notin_range (h : b ∉ Set.range f) : s.embDomain f b = 0 := by
rw [emb_domain_apply, dif_neg h]
#align hahn_series.summable_family.emb_domain_notin_range HahnSeries.SummableFamily.embDomain_notin_range
+/- warning: hahn_series.summable_family.hsum_emb_domain -> HahnSeries.SummableFamily.hsum_embDomain is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : PartialOrder.{u1} Γ] [_inst_2 : AddCommMonoid.{u2} R] {α : Type.{u3}} {β : Type.{u4}} (s : HahnSeries.SummableFamily.{u1, u2, u3} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u3, succ u4} α β), Eq.{max (succ u1) (succ u2)} (HahnSeries.{u1, u2} Γ R _inst_1 (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))) (HahnSeries.SummableFamily.hsum.{u1, u2, u4} Γ R _inst_1 _inst_2 β (HahnSeries.SummableFamily.embDomain.{u1, u2, u3, u4} Γ R _inst_1 _inst_2 α β s f)) (HahnSeries.SummableFamily.hsum.{u1, u2, u3} Γ R _inst_1 _inst_2 α s)
+but is expected to have type
+ forall {Γ : Type.{u4}} {R : Type.{u3}} [_inst_1 : PartialOrder.{u4} Γ] [_inst_2 : AddCommMonoid.{u3} R] {α : Type.{u1}} {β : Type.{u2}} (s : HahnSeries.SummableFamily.{u4, u3, u1} Γ R _inst_1 _inst_2 α) (f : Function.Embedding.{succ u1, succ u2} α β), Eq.{max (succ u4) (succ u3)} (HahnSeries.{u4, u3} Γ R _inst_1 (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R _inst_2))) (HahnSeries.SummableFamily.hsum.{u4, u3, u2} Γ R _inst_1 _inst_2 β (HahnSeries.SummableFamily.embDomain.{u4, u3, u1, u2} Γ R _inst_1 _inst_2 α β s f)) (HahnSeries.SummableFamily.hsum.{u4, u3, u1} Γ R _inst_1 _inst_2 α s)
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.hsum_emb_domain HahnSeries.SummableFamily.hsum_embDomainₓ'. -/
@[simp]
theorem hsum_embDomain : (s.embDomain f).hsum = s.hsum :=
by
@@ -1803,6 +2603,12 @@ section powers
variable [LinearOrderedCancelAddCommMonoid Γ] [CommRing R] [IsDomain R]
+/- warning: hahn_series.summable_family.powers -> HahnSeries.SummableFamily.powers is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] (x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))), (LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 (CommRing.toRing.{u2} R _inst_2) _inst_3) x)) -> (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat)
+but is expected to have type
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_2))] (x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (CommMonoidWithZero.toZero.{u2} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} R (IsDomain.toCancelCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_2) _inst_3)))), (LT.lt.{u1} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => WithTop.{u1} Γ) x) (Preorder.toLT.{u1} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => WithTop.{u1} Γ) x) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => WithTop.{u1} Γ) x) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => WithTop.{u1} Γ) x) (WithTop.zero.{u1} Γ (AddRightCancelMonoid.toZero.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)))))))) (FunLike.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2), succ u1} (AddValuation.{max u2 u1, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) (fun (_x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => WithTop.{u1} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))))) (WithTop.{u1} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 (CommRing.toRing.{u2} R _inst_2) _inst_3) x)) -> (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat)
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.powers HahnSeries.SummableFamily.powersₓ'. -/
/-- The powers of an element of positive valuation form a summable family. -/
def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R ℕ
where
@@ -1837,11 +2643,23 @@ def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R
variable {x : HahnSeries Γ R} (hx : 0 < addVal Γ R x)
+/- warning: hahn_series.summable_family.coe_powers -> HahnSeries.SummableFamily.coe_powers is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))} (hx : LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 (CommRing.toRing.{u2} R _inst_2) _inst_3) x)), Eq.{max 1 (succ u1) (succ u2)} (Nat -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))))) (coeFn.{max (succ u1) (succ u2), max 1 (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (fun (_x : HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) => Nat -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))))) (HahnSeries.SummableFamily.hasCoeToFun.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.powers.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x hx)) (HPow.hPow.{max u1 u2, 0, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) Nat (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHPow.{max u1 u2, 0} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) Nat (Monoid.Pow.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (Ring.toMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2))))) x)
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : CommRing.{u1} R] [_inst_3 : IsDomain.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))} (hx : LT.lt.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.zero.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)))))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 (CommRing.toRing.{u1} R _inst_2) _inst_3) x)), Eq.{max (succ u2) (succ u1)} (Nat -> (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))))))) (HahnSeries.SummableFamily.toFun.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat (HahnSeries.SummableFamily.powers.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x hx)) (HPow.hPow.{max u2 u1, 0, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) Nat (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) (instHPow.{max u2 u1, 0} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) Nat (Monoid.Pow.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (MonoidWithZero.toMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (Semiring.toMonoidWithZero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x)
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.coe_powers HahnSeries.SummableFamily.coe_powersₓ'. -/
@[simp]
theorem coe_powers : ⇑(powers x hx) = pow x :=
rfl
#align hahn_series.summable_family.coe_powers HahnSeries.SummableFamily.coe_powers
+/- warning: hahn_series.summable_family.emb_domain_succ_smul_powers -> HahnSeries.SummableFamily.embDomain_succ_smul_powers is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))} (hx : LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 (CommRing.toRing.{u2} R _inst_2) _inst_3) x)), Eq.{max (succ u1) (succ u2)} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.embDomain.{u1, u2, 0, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat Nat (SMul.smul.{max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.hasSmul.{u1, u2, 0} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2)) Nat) x (HahnSeries.SummableFamily.powers.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x hx)) (Function.Embedding.mk.{1, 1} Nat Nat Nat.succ Nat.succ_injective)) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (instHSub.{max u1 u2} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (AddCommGroup.toAddGroup.{max u1 u2} (HahnSeries.SummableFamily.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat) (HahnSeries.SummableFamily.addCommGroup.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))) Nat))))) (HahnSeries.SummableFamily.powers.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x hx) (HahnSeries.SummableFamily.ofFinsupp.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat (Finsupp.single.{0, max u1 u2} Nat (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) (HahnSeries.hasOne.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : CommRing.{u1} R] [_inst_3 : IsDomain.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))} (hx : LT.lt.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.zero.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)))))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 (CommRing.toRing.{u1} R _inst_2) _inst_3) x)), Eq.{max (succ u2) (succ u1)} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.embDomain.{u2, u1, 0, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat Nat (HSMul.hSMul.{max u2 u1, max u1 u2, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (instHSMul.{max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.instSMulHahnSeriesToPartialOrderToZeroToMonoidWithZeroSummableFamilyToAddCommMonoidToNonUnitalNonAssocSemiringToNonAssocSemiring.{u2, u1, 0} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)) Nat)) x (HahnSeries.SummableFamily.powers.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x hx)) (Function.Embedding.mk.{1, 1} Nat Nat Nat.succ Nat.succ_injective)) (HSub.hSub.{max u2 u1, max u1 u2, max u2 u1} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (instHSub.{max u2 u1} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (SubNegMonoid.toSub.{max u2 u1} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (AddGroup.toSubNegMonoid.{max u2 u1} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (AddCommGroup.toAddGroup.{max u2 u1} (HahnSeries.SummableFamily.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat) (HahnSeries.SummableFamily.instAddCommGroupSummableFamilyToAddCommMonoid.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_2)) Nat))))) (HahnSeries.SummableFamily.powers.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x hx) (HahnSeries.SummableFamily.ofFinsupp.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat (Finsupp.single.{0, max u1 u2} Nat (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) 1 (One.toOfNat1.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.emb_domain_succ_smul_powers HahnSeries.SummableFamily.embDomain_succ_smul_powersₓ'. -/
theorem embDomain_succ_smul_powers :
(x • powers x hx).embDomain ⟨Nat.succ, Nat.succ_injective⟩ =
powers x hx - ofFinsupp (Finsupp.single 0 1) :=
@@ -1857,6 +2675,12 @@ theorem embDomain_succ_smul_powers :
rw [Finsupp.single_eq_of_ne n.succ_ne_zero.symm, sub_zero]
#align hahn_series.summable_family.emb_domain_succ_smul_powers HahnSeries.SummableFamily.embDomain_succ_smul_powers
+/- warning: hahn_series.summable_family.one_sub_self_mul_hsum_powers -> HahnSeries.SummableFamily.one_sub_self_mul_hsum_powers is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] {x : HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))} (hx : LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (AddRightCancelMonoid.toAddMonoid.{u1} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u1} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u1} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ _inst_1)) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.addVal.{u1, u2} Γ R _inst_1 (CommRing.toRing.{u2} R _inst_2) _inst_3) x)), Eq.{succ (max u1 u2)} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasMul.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.addGroup.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddGroupWithOne.toAddGroup.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasOne.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) x) (HahnSeries.SummableFamily.hsum.{u1, u2, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) Nat (HahnSeries.SummableFamily.powers.{u1, u2} Γ R _inst_1 _inst_2 _inst_3 x hx))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasOne.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ _inst_1) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedCancelAddCommMonoid.{u2} Γ] [_inst_2 : CommRing.{u1} R] [_inst_3 : IsDomain.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))] {x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))} (hx : LT.lt.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) x) (WithTop.zero.{u2} Γ (AddRightCancelMonoid.toZero.{u2} Γ (AddCancelMonoid.toAddRightCancelMonoid.{u2} Γ (AddCancelCommMonoid.toAddCancelMonoid.{u2} Γ (OrderedCancelAddCommMonoid.toCancelAddCommMonoid.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)))))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ _inst_1))) (HahnSeries.addVal.{u2, u1} Γ R _inst_1 (CommRing.toRing.{u1} R _inst_2) _inst_3) x)), Eq.{max (succ u2) (succ u1)} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (instHMul.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (instHSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (Ring.toSub.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) 1 (One.toOfNat1.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) x) (HahnSeries.SummableFamily.hsum.{u2, u1, 0} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) Nat (HahnSeries.SummableFamily.powers.{u2, u1} Γ R _inst_1 _inst_2 _inst_3 x hx))) (OfNat.ofNat.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) 1 (One.toOfNat1.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ _inst_1) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.summable_family.one_sub_self_mul_hsum_powers HahnSeries.SummableFamily.one_sub_self_mul_hsum_powersₓ'. -/
theorem one_sub_self_mul_hsum_powers : (1 - x) * (powers x hx).hsum = 1 :=
by
rw [← hsum_smul, sub_smul, one_smul, hsum_sub, ←
@@ -1876,8 +2700,14 @@ section IsDomain
variable [CommRing R] [IsDomain R]
+/- warning: hahn_series.unit_aux -> HahnSeries.unit_aux is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] (x : HahnSeries.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) {r : R}, (Eq.{succ u2} R (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (Ring.toDistrib.{u2} R (CommRing.toRing.{u2} R _inst_2)))) r (HahnSeries.coeff.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) x (HahnSeries.order.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (SubNegMonoid.toAddMonoid.{u1} Γ (AddGroup.toSubNegMonoid.{u1} Γ (AddCommGroup.toAddGroup.{u1} Γ (OrderedAddCommGroup.toAddCommGroup.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))))) x))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) -> (LT.lt.{u1} (WithTop.{u1} Γ) (Preorder.toHasLt.{u1} (WithTop.{u1} Γ) (WithTop.preorder.{u1} Γ (PartialOrder.toPreorder.{u1} Γ (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))) (OfNat.ofNat.{u1} (WithTop.{u1} Γ) 0 (OfNat.mk.{u1} (WithTop.{u1} Γ) 0 (Zero.zero.{u1} (WithTop.{u1} Γ) (WithTop.zero.{u1} Γ (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (SubNegMonoid.toAddMonoid.{u1} Γ (AddGroup.toSubNegMonoid.{u1} Γ (AddCommGroup.toAddGroup.{u1} Γ (OrderedAddCommGroup.toAddCommGroup.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))))))))) (coeFn.{max (succ (max u1 u2)) (succ u1), max (succ (max u1 u2)) (succ u1)} (AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1)) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1)))) (fun (_x : AddValuation.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1)) (CommRing.toRing.{u2} R _inst_2)) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1)))) => (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) -> (WithTop.{u1} Γ)) (AddValuation.hasCoeToFun.{max u1 u2, u1} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (WithTop.{u1} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u1} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (HahnSeries.ring.{u1, u2} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1)) (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.addVal.{u1, u2} Γ R (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1) (CommRing.toRing.{u2} R _inst_2) _inst_3) (HSub.hSub.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (SubNegMonoid.toHasSub.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (AddGroup.toSubNegMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.addGroup.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (AddGroupWithOne.toAddGroup.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (OfNat.ofNat.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (OfNat.mk.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) 1 (One.one.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasOne.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2))))))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasMul.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (instHMul.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.hasMul.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) (fun (_x : RingHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (RingHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))) (HahnSeries.nonAssocSemiring.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))) (HahnSeries.C.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))) r) (coeFn.{max (succ (max u1 u2)) (succ u2), max (succ u2) (succ (max u1 u2))} (ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (fun (_x : ZeroHom.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) => R -> (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (ZeroHom.hasCoeToFun.{u2, max u1 u2} R (HahnSeries.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (HahnSeries.hasZero.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))) (HahnSeries.single.{u1, u2} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u1} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u1} Γ _inst_1))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (Neg.neg.{u1} Γ (SubNegMonoid.toHasNeg.{u1} Γ (AddGroup.toSubNegMonoid.{u1} Γ (AddCommGroup.toAddGroup.{u1} Γ (OrderedAddCommGroup.toAddCommGroup.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))) (HahnSeries.order.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (SubNegMonoid.toAddMonoid.{u1} Γ (AddGroup.toSubNegMonoid.{u1} Γ (AddCommGroup.toAddGroup.{u1} Γ (OrderedAddCommGroup.toAddCommGroup.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))))) x))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R (CommRing.toRing.{u2} R _inst_2)))))))))) x))))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedAddCommGroup.{u2} Γ] [_inst_2 : CommRing.{u1} R] [_inst_3 : IsDomain.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))] (x : HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) {r : R}, (Eq.{succ u1} R (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (NonUnitalNonAssocRing.toMul.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2))))) r (HahnSeries.coeff.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) x (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (instHSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (Ring.toSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) 1 (One.toOfNat1.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.C.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.single.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Neg.neg.{u2} Γ (NegZeroClass.toNeg.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x))) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (instHSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (Ring.toSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) 1 (One.toOfNat1.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.C.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.single.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Neg.neg.{u2} Γ (NegZeroClass.toNeg.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x))) (WithTop.preorder.{u2} Γ (PartialOrder.toPreorder.{u2} Γ (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (instHSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (Ring.toSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) 1 (One.toOfNat1.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.C.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.single.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Neg.neg.{u2} Γ (NegZeroClass.toNeg.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x))) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (instHSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (Ring.toSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) 1 (One.toOfNat1.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.C.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) a) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.single.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Neg.neg.{u2} Γ (NegZeroClass.toNeg.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x))) (WithTop.zero.{u2} Γ (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)))))))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), succ u2} (AddValuation.{max u1 u2, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)) (WithTop.{u2} Γ) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)))) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (fun (_x : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => (fun (x._@.Mathlib.RingTheory.Valuation.Basic._hyg.8830 : HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) => WithTop.{u2} Γ) _x) (AddValuation.instFunLikeAddValuation.{max u2 u1, u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (WithTop.{u2} Γ) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)) (WithTop.linearOrderedAddCommMonoidWithTop.{u2} Γ (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)))) (HahnSeries.addVal.{u2, u1} Γ R (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1) (CommRing.toRing.{u1} R _inst_2) _inst_3) (HSub.hSub.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_2))))) (instHSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (Ring.toSub.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instRingHahnSeriesToPartialOrderToZeroToMonoidWithZeroToSemiring.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommRing.toRing.{u1} R _inst_2)))) (OfNat.ofNat.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) 1 (One.toOfNat1.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instOneHahnSeriesToPartialOrder.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (HMul.hMul.{max u1 u2, max u2 u1, max u2 u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (instHMul.{max u1 u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) r) (HahnSeries.instMulHahnSeriesToPartialOrderToZeroToMulZeroClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, max (succ u1) (succ u2)} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (NonUnitalNonAssocSemiring.toMul.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, max u1 u2} (RingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (RingHom.instRingHomClassRingHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedCancelAddCommMonoid.toPartialOrder.{u2} Γ (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))) (HahnSeries.instNonAssocSemiringHahnSeriesToPartialOrderToZeroToMulZeroOneClass.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.C.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : R) => HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) _x) (ZeroHomClass.toFunLike.{max u2 u1, u1, max u2 u1} (ZeroHom.{u1, max u1 u2} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (ZeroHom.zeroHomClass.{u1, max u2 u1} R (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (HahnSeries.instZeroHahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))))))) (HahnSeries.single.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (MulZeroOneClass.toZero.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) (Neg.neg.{u2} Γ (NegZeroClass.toNeg.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))))) x))))
+Case conversion may be inaccurate. Consider using '#align hahn_series.unit_aux HahnSeries.unit_auxₓ'. -/
theorem unit_aux (x : HahnSeries Γ R) {r : R} (hr : r * x.coeff x.order = 1) :
- 0 < addVal Γ R (1 - c r * single (-x.order) 1 * x) :=
+ 0 < addVal Γ R (1 - C r * single (-x.order) 1 * x) :=
by
have h10 : (1 : R) ≠ 0 := one_ne_zero
have x0 : x ≠ 0 := ne_zero_of_coeff_ne_zero (right_ne_zero_of_mul_eq_one hr)
@@ -1898,6 +2728,12 @@ theorem unit_aux (x : HahnSeries Γ R) {r : R} (hr : r * x.coeff x.order = 1) :
← add_neg_self x.order, single_mul_coeff_add, one_mul, hr, sub_self]
#align hahn_series.unit_aux HahnSeries.unit_aux
+/- warning: hahn_series.is_unit_iff -> HahnSeries.isUnit_iff is a dubious translation:
+lean 3 declaration is
+ forall {Γ : Type.{u1}} {R : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u1} Γ] [_inst_2 : CommRing.{u2} R] [_inst_3 : IsDomain.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_2))] {x : HahnSeries.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))}, Iff (IsUnit.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (Ring.toMonoid.{max u1 u2} (HahnSeries.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2))))))) (HahnSeries.ring.{u1, u2} Γ R (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (CommRing.toRing.{u2} R _inst_2))) x) (IsUnit.{u2} R (Ring.toMonoid.{u2} R (CommRing.toRing.{u2} R _inst_2)) (HahnSeries.coeff.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) x (HahnSeries.order.{u1, u2} Γ R (OrderedAddCommGroup.toPartialOrder.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1)) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_2)))))) (AddZeroClass.toHasZero.{u1} Γ (AddMonoid.toAddZeroClass.{u1} Γ (SubNegMonoid.toAddMonoid.{u1} Γ (AddGroup.toSubNegMonoid.{u1} Γ (AddCommGroup.toAddGroup.{u1} Γ (OrderedAddCommGroup.toAddCommGroup.{u1} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u1} Γ _inst_1))))))) x)))
+but is expected to have type
+ forall {Γ : Type.{u2}} {R : Type.{u1}} [_inst_1 : LinearOrderedAddCommGroup.{u2} Γ] [_inst_2 : CommRing.{u1} R] [_inst_3 : IsDomain.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))] {x : HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))}, Iff (IsUnit.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (MonoidWithZero.toMonoid.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (Semiring.toMonoidWithZero.{max u2 u1} (HahnSeries.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3)))) (HahnSeries.instSemiringHahnSeriesToPartialOrderToZeroToMonoidWithZero.{u2, u1} Γ R (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} Γ (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} Γ _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2))))) x) (IsUnit.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2)))) (HahnSeries.coeff.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) x (HahnSeries.order.{u2, u1} Γ R (OrderedAddCommGroup.toPartialOrder.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1)) (CommMonoidWithZero.toZero.{u1} R (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} R (IsDomain.toCancelCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_2) _inst_3))) (NegZeroClass.toZero.{u2} Γ (SubNegZeroMonoid.toNegZeroClass.{u2} Γ (SubtractionMonoid.toSubNegZeroMonoid.{u2} Γ (SubtractionCommMonoid.toSubtractionMonoid.{u2} Γ (AddCommGroup.toDivisionAddCommMonoid.{u2} Γ (OrderedAddCommGroup.toAddCommGroup.{u2} Γ (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} Γ _inst_1))))))) x)))
+Case conversion may be inaccurate. Consider using '#align hahn_series.is_unit_iff HahnSeries.isUnit_iffₓ'. -/
theorem isUnit_iff {x : HahnSeries Γ R} : IsUnit x ↔ IsUnit (x.coeff x.order) :=
by
constructor
@@ -1923,7 +2759,7 @@ instance [Field R] : Field (HahnSeries Γ R) :=
inv := fun x =>
if x0 : x = 0 then 0
else
- c (x.coeff x.order)⁻¹ * (single (-x.order)) 1 *
+ C (x.coeff x.order)⁻¹ * (single (-x.order)) 1 *
(SummableFamily.powers _ (unit_aux x (inv_mul_cancel (coeff_order_ne_zero x0)))).hsum
inv_zero := dif_pos rfl
mul_inv_cancel := fun x x0 =>
mathlib commit https://github.com/leanprover-community/mathlib/commit/75e7fca56381d056096ce5d05e938f63a6567828
@@ -1217,7 +1217,7 @@ theorem ofPowerSeries_apply_coeff (x : PowerSeries R) (n : ℕ) :
#align hahn_series.of_power_series_apply_coeff HahnSeries.ofPowerSeries_apply_coeff
@[simp]
-theorem ofPowerSeries_c (r : R) : ofPowerSeries Γ R (PowerSeries.c R r) = HahnSeries.c r :=
+theorem ofPowerSeries_c (r : R) : ofPowerSeries Γ R (PowerSeries.C R r) = HahnSeries.c r :=
by
ext n
simp only [C, single_coeff, of_power_series_apply, RingHom.coe_mk]
@@ -1226,13 +1226,13 @@ theorem ofPowerSeries_c (r : R) : ofPowerSeries Γ R (PowerSeries.c R r) = HahnS
convert@emb_domain_coeff _ _ _ _ _ _ _ _ 0 <;> simp
· rw [emb_domain_notin_image_support]
simp only [not_exists, Set.mem_image, to_power_series_symm_apply_coeff, mem_support,
- PowerSeries.coeff_c]
+ PowerSeries.coeff_C]
intro
simp (config := { contextual := true }) [Ne.symm hn]
#align hahn_series.of_power_series_C HahnSeries.ofPowerSeries_c
@[simp]
-theorem ofPowerSeries_x : ofPowerSeries Γ R PowerSeries.x = single 1 1 :=
+theorem ofPowerSeries_x : ofPowerSeries Γ R PowerSeries.X = single 1 1 :=
by
ext n
simp only [single_coeff, of_power_series_apply, RingHom.coe_mk]
@@ -1241,14 +1241,14 @@ theorem ofPowerSeries_x : ofPowerSeries Γ R PowerSeries.x = single 1 1 :=
convert@emb_domain_coeff _ _ _ _ _ _ _ _ 1 <;> simp
· rw [emb_domain_notin_image_support]
simp only [not_exists, Set.mem_image, to_power_series_symm_apply_coeff, mem_support,
- PowerSeries.coeff_x]
+ PowerSeries.coeff_X]
intro
simp (config := { contextual := true }) [Ne.symm hn]
#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_x
@[simp]
theorem ofPowerSeries_x_pow {R} [CommSemiring R] (n : ℕ) :
- ofPowerSeries Γ R (PowerSeries.x ^ n) = single (n : Γ) 1 :=
+ ofPowerSeries Γ R (PowerSeries.X ^ n) = single (n : Γ) 1 :=
by
rw [RingHom.map_pow]
induction' n with n ih
@@ -1321,7 +1321,7 @@ def toPowerSeriesAlg : HahnSeries ℕ A ≃ₐ[R] PowerSeries A :=
· simp only [PowerSeries.coeff_zero_eq_constantCoeff, single_coeff_same]
rfl
· simp only [n.succ_ne_zero, Ne.def, not_false_iff, single_coeff_of_ne]
- rw [PowerSeries.coeff_c, if_neg n.succ_ne_zero] }
+ rw [PowerSeries.coeff_C, if_neg n.succ_ne_zero] }
#align hahn_series.to_power_series_alg HahnSeries.toPowerSeriesAlg
variable (Γ R) [StrictOrderedSemiring Γ]
mathlib commit https://github.com/leanprover-community/mathlib/commit/e3fb84046afd187b710170887195d50bada934ee
@@ -1409,12 +1409,12 @@ theorem addVal_le_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g
end Valuation
-theorem isPwo_unionᵢ_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
+theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
{x : HahnSeries Γ R} (hx : 0 < addVal Γ R x) : (⋃ n : ℕ, (x ^ n).support).IsPwo :=
by
apply (x.is_wf_support.is_pwo.add_submonoid_closure fun g hg => _).mono _
· exact WithTop.coe_le_coe.1 (le_trans (le_of_lt hx) (add_val_le_of_coeff_ne_zero hg))
- refine' Set.unionᵢ_subset fun n => _
+ refine' Set.iUnion_subset fun n => _
induction' n with n ih <;> intro g hn
· simp only [exists_prop, and_true_iff, Set.mem_singleton_iff, Set.setOf_eq_eq_singleton,
mem_support, ite_eq_right_iff, Ne.def, not_false_iff, one_ne_zero, pow_zero, not_forall,
@@ -1423,7 +1423,7 @@ theorem isPwo_unionᵢ_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Rin
exact AddSubmonoid.zero_mem _
· obtain ⟨i, j, hi, hj, rfl⟩ := support_mul_subset_add_support hn
exact SetLike.mem_coe.2 (AddSubmonoid.add_mem _ (AddSubmonoid.subset_closure hi) (ih hj))
-#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPwo_unionᵢ_support_powers
+#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPwo_iUnion_support_powers
section
@@ -1434,7 +1434,7 @@ variable (Γ) (R) [PartialOrder Γ] [AddCommMonoid R]
and that only finitely many series are nonzero at any given coefficient. -/
structure SummableFamily (α : Type _) where
toFun : α → HahnSeries Γ R
- isPwo_unionᵢ_support' : Set.IsPwo (⋃ a : α, (to_fun a).support)
+ isPwo_iUnion_support' : Set.IsPwo (⋃ a : α, (to_fun a).support)
finite_co_support' : ∀ g : Γ, { a | (to_fun a).coeff g ≠ 0 }.Finite
#align hahn_series.summable_family HahnSeries.SummableFamily
@@ -1449,9 +1449,9 @@ variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
instance : CoeFun (SummableFamily Γ R α) fun _ => α → HahnSeries Γ R :=
⟨toFun⟩
-theorem isPwo_unionᵢ_support (s : SummableFamily Γ R α) : Set.IsPwo (⋃ a : α, (s a).support) :=
- s.isPwo_unionᵢ_support'
-#align hahn_series.summable_family.is_pwo_Union_support HahnSeries.SummableFamily.isPwo_unionᵢ_support
+theorem isPwo_iUnion_support (s : SummableFamily Γ R α) : Set.IsPwo (⋃ a : α, (s a).support) :=
+ s.isPwo_iUnion_support'
+#align hahn_series.summable_family.is_pwo_Union_support HahnSeries.SummableFamily.isPwo_iUnion_support
theorem finite_co_support (s : SummableFamily Γ R α) (g : Γ) :
(Function.support fun a => (s a).coeff g).Finite :=
@@ -1472,11 +1472,11 @@ theorem ext {s t : SummableFamily Γ R α} (h : ∀ a : α, s a = t a) : s = t :
instance : Add (SummableFamily Γ R α) :=
⟨fun x y =>
{ toFun := x + y
- isPwo_unionᵢ_support' :=
- (x.isPwo_unionᵢ_support.union y.isPwo_unionᵢ_support).mono
+ isPwo_iUnion_support' :=
+ (x.isPwo_iUnion_support.union y.isPwo_iUnion_support).mono
(by
- rw [← Set.unionᵢ_union_distrib]
- exact Set.unionᵢ_mono fun a => support_add_subset)
+ rw [← Set.iUnion_union_distrib]
+ exact Set.iUnion_mono fun a => support_add_subset)
finite_co_support' := fun g =>
((x.finite_co_support g).union (y.finite_co_support g)).Subset
(by
@@ -1532,9 +1532,9 @@ def hsum (s : SummableFamily Γ R α) : HahnSeries Γ R
where
coeff g := ∑ᶠ i, (s i).coeff g
isPwo_support' :=
- s.isPwo_unionᵢ_support.mono fun g => by
+ s.isPwo_iUnion_support.mono fun g => by
contrapose
- rw [Set.mem_unionᵢ, not_exists, Function.mem_support, Classical.not_not]
+ rw [Set.mem_iUnion, not_exists, Function.mem_support, Classical.not_not]
simp_rw [mem_support, Classical.not_not]
intro h
rw [finsum_congr h, finsum_zero]
@@ -1550,7 +1550,7 @@ theorem support_hsum_subset {s : SummableFamily Γ R α} : s.hsum.support ⊆
by
rw [mem_support, hsum_coeff, finsum_eq_sum _ (s.finite_co_support _)] at hg
obtain ⟨a, h1, h2⟩ := exists_ne_zero_of_sum_ne_zero hg
- rw [Set.mem_unionᵢ]
+ rw [Set.mem_iUnion]
exact ⟨a, h2⟩
#align hahn_series.summable_family.support_hsum_subset HahnSeries.SummableFamily.support_hsum_subset
@@ -1573,7 +1573,7 @@ instance : AddCommGroup (SummableFamily Γ R α) :=
SummableFamily.addCommMonoid with
neg := fun s =>
{ toFun := fun a => -s a
- isPwo_unionᵢ_support' := by
+ isPwo_iUnion_support' := by
simp_rw [support_neg]
exact s.is_pwo_Union_support'
finite_co_support' := fun g =>
@@ -1611,25 +1611,25 @@ variable [OrderedCancelAddCommMonoid Γ] [Semiring R] {α : Type _}
instance : SMul (HahnSeries Γ R) (SummableFamily Γ R α)
where smul x s :=
{ toFun := fun a => x * s a
- isPwo_unionᵢ_support' :=
+ isPwo_iUnion_support' :=
by
apply (x.is_pwo_support.add s.is_pwo_Union_support).mono
- refine' Set.Subset.trans (Set.unionᵢ_mono fun a => support_mul_subset_add_support) _
+ refine' Set.Subset.trans (Set.iUnion_mono fun a => support_mul_subset_add_support) _
intro g
- simp only [Set.mem_unionᵢ, exists_imp]
- exact fun a ha => (Set.add_subset_add (Set.Subset.refl _) (Set.subset_unionᵢ _ a)) ha
+ simp only [Set.mem_iUnion, exists_imp]
+ exact fun a ha => (Set.add_subset_add (Set.Subset.refl _) (Set.subset_iUnion _ a)) ha
finite_co_support' := fun g =>
by
refine'
- ((add_antidiagonal x.is_pwo_support s.is_pwo_Union_support g).finite_toSet.bunionᵢ'
+ ((add_antidiagonal x.is_pwo_support s.is_pwo_Union_support g).finite_toSet.biUnion'
fun ij hij => _).Subset
fun a ha => _
· exact fun ij hij => Function.support fun a => (s a).coeff ij.2
· apply s.finite_co_support
· obtain ⟨i, j, hi, hj, rfl⟩ := support_mul_subset_add_support ha
- simp only [exists_prop, Set.mem_unionᵢ, mem_add_antidiagonal, mul_coeff, mem_support,
+ simp only [exists_prop, Set.mem_iUnion, mem_add_antidiagonal, mul_coeff, mem_support,
is_pwo_support, Prod.exists]
- exact ⟨i, j, mem_coe.2 (mem_add_antidiagonal.2 ⟨hi, Set.mem_unionᵢ.2 ⟨a, hj⟩, rfl⟩), hj⟩ }
+ exact ⟨i, j, mem_coe.2 (mem_add_antidiagonal.2 ⟨hi, Set.mem_iUnion.2 ⟨a, hj⟩, rfl⟩), hj⟩ }
@[simp]
theorem smul_apply {x : HahnSeries Γ R} {s : SummableFamily Γ R α} {a : α} : (x • s) a = x * s a :=
@@ -1651,13 +1651,13 @@ theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s)
by
ext g
simp only [mul_coeff, hsum_coeff, smul_apply]
- have h : ∀ i, (s i).support ⊆ ⋃ j, (s j).support := Set.subset_unionᵢ _
+ have h : ∀ i, (s i).support ⊆ ⋃ j, (s j).support := Set.subset_iUnion _
refine'
(Eq.trans (finsum_congr fun a => _)
(finsum_sum_comm (add_antidiagonal x.is_pwo_support s.is_pwo_Union_support g)
(fun i ij => x.coeff (Prod.fst ij) * (s i).coeff ij.snd) _)).trans
_
- · refine' sum_subset (add_antidiagonal_mono_right (Set.subset_unionᵢ _ a)) _
+ · refine' sum_subset (add_antidiagonal_mono_right (Set.subset_iUnion _ a)) _
rintro ⟨i, j⟩ hU ha
rw [mem_add_antidiagonal] at *
rw [Classical.not_not.1 fun con => ha ⟨hU.1, Con, hU.2.2⟩, MulZeroClass.mul_zero]
@@ -1671,7 +1671,7 @@ theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s)
rw [mul_finsum]
apply s.finite_co_support
· intro x hx
- simp only [Set.mem_unionᵢ, Ne.def, mem_support]
+ simp only [Set.mem_iUnion, Ne.def, mem_support]
contrapose! hx
simp [hx]
· rintro ⟨i, j⟩ hU ha
@@ -1705,15 +1705,15 @@ variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α
where
toFun := f
- isPwo_unionᵢ_support' :=
+ isPwo_iUnion_support' :=
by
apply (f.support.is_pwo_bUnion.2 fun a ha => (f a).isPwo_support).mono
- refine' Set.unionᵢ_subset_iff.2 fun a g hg => _
+ refine' Set.iUnion_subset_iff.2 fun a g hg => _
have haf : a ∈ f.support :=
by
rw [Finsupp.mem_support_iff, ← support_nonempty_iff]
exact ⟨g, hg⟩
- exact Set.mem_bunionᵢ haf hg
+ exact Set.mem_biUnion haf hg
finite_co_support' g :=
by
refine' f.support.finite_to_set.subset fun a ha => _
@@ -1751,12 +1751,12 @@ variable [PartialOrder Γ] [AddCommMonoid R] {α β : Type _}
def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R β
where
toFun b := if h : b ∈ Set.range f then s (Classical.choose h) else 0
- isPwo_unionᵢ_support' :=
+ isPwo_iUnion_support' :=
by
- refine' s.is_pwo_Union_support.mono (Set.unionᵢ_subset fun b g h => _)
+ refine' s.is_pwo_Union_support.mono (Set.iUnion_subset fun b g h => _)
by_cases hb : b ∈ Set.range f
· rw [dif_pos hb] at h
- exact Set.mem_unionᵢ.2 ⟨Classical.choose hb, h⟩
+ exact Set.mem_iUnion.2 ⟨Classical.choose hb, h⟩
· contrapose! h
simp [hb]
finite_co_support' g :=
@@ -1807,15 +1807,15 @@ variable [LinearOrderedCancelAddCommMonoid Γ] [CommRing R] [IsDomain R]
def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R ℕ
where
toFun n := x ^ n
- isPwo_unionᵢ_support' := isPwo_unionᵢ_support_powers hx
+ isPwo_iUnion_support' := isPwo_iUnion_support_powers hx
finite_co_support' g := by
have hpwo := is_pwo_Union_support_powers hx
by_cases hg : g ∈ ⋃ n : ℕ, { g | (x ^ n).coeff g ≠ 0 }
- swap; · exact set.finite_empty.subset fun n hn => hg (Set.mem_unionᵢ.2 ⟨n, hn⟩)
+ swap; · exact set.finite_empty.subset fun n hn => hg (Set.mem_iUnion.2 ⟨n, hn⟩)
apply hpwo.is_wf.induction hg
intro y ys hy
refine'
- ((((add_antidiagonal x.is_pwo_support hpwo y).finite_toSet.bunionᵢ fun ij hij =>
+ ((((add_antidiagonal x.is_pwo_support hpwo y).finite_toSet.biUnion fun ij hij =>
hy ij.snd _ _).image
Nat.succ).union
(Set.finite_singleton 0)).Subset
@@ -1829,8 +1829,8 @@ def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R
· rintro (_ | n) hn
· exact Set.mem_union_right _ (Set.mem_singleton 0)
· obtain ⟨i, j, hi, hj, rfl⟩ := support_mul_subset_add_support hn
- refine' Set.mem_union_left _ ⟨n, Set.mem_unionᵢ.2 ⟨⟨i, j⟩, Set.mem_unionᵢ.2 ⟨_, hj⟩⟩, rfl⟩
- simp only [and_true_iff, Set.mem_unionᵢ, mem_add_antidiagonal, mem_coe, eq_self_iff_true,
+ refine' Set.mem_union_left _ ⟨n, Set.mem_iUnion.2 ⟨⟨i, j⟩, Set.mem_iUnion.2 ⟨_, hj⟩⟩, rfl⟩
+ simp only [and_true_iff, Set.mem_iUnion, mem_add_antidiagonal, mem_coe, eq_self_iff_true,
Ne.def, mem_support, Set.mem_setOf_eq]
exact ⟨hi, n, hj⟩
#align hahn_series.summable_family.powers HahnSeries.SummableFamily.powers
mathlib commit https://github.com/leanprover-community/mathlib/commit/08e1d8d4d989df3a6df86f385e9053ec8a372cc1
@@ -1124,7 +1124,7 @@ instance [Nontrivial Γ] [Nontrivial R] : Nontrivial (Subalgebra R (HahnSeries
intro x
rw [ext_iff, Function.funext_iff, not_forall]
refine' ⟨a, _⟩
- rw [single_coeff_same, algebra_map_apply, C_apply, single_coeff_of_ne ha]
+ rw [single_coeff_same, algebraMap_apply, C_apply, single_coeff_of_ne ha]
exact zero_ne_one⟩⟩
section Domain
@@ -1315,7 +1315,7 @@ def toPowerSeriesAlg : HahnSeries ℕ A ≃ₐ[R] PowerSeries A :=
{ toPowerSeries with
commutes' := fun r => by
ext n
- simp only [algebra_map_apply, PowerSeries.algebraMap_apply, [anonymous], C_apply,
+ simp only [algebraMap_apply, PowerSeries.algebraMap_apply, [anonymous], C_apply,
coeff_to_power_series]
cases n
· simp only [PowerSeries.coeff_zero_eq_constantCoeff, single_coeff_same]
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce7e9d53d4bbc38065db3b595cd5bd73c323bc1d
@@ -1223,7 +1223,7 @@ theorem ofPowerSeries_c (r : R) : ofPowerSeries Γ R (PowerSeries.c R r) = HahnS
simp only [C, single_coeff, of_power_series_apply, RingHom.coe_mk]
split_ifs with hn hn
· subst hn
- convert @emb_domain_coeff _ _ _ _ _ _ _ _ 0 <;> simp
+ convert@emb_domain_coeff _ _ _ _ _ _ _ _ 0 <;> simp
· rw [emb_domain_notin_image_support]
simp only [not_exists, Set.mem_image, to_power_series_symm_apply_coeff, mem_support,
PowerSeries.coeff_c]
@@ -1238,7 +1238,7 @@ theorem ofPowerSeries_x : ofPowerSeries Γ R PowerSeries.x = single 1 1 :=
simp only [single_coeff, of_power_series_apply, RingHom.coe_mk]
split_ifs with hn hn
· rw [hn]
- convert @emb_domain_coeff _ _ _ _ _ _ _ _ 1 <;> simp
+ convert@emb_domain_coeff _ _ _ _ _ _ _ _ 1 <;> simp
· rw [emb_domain_notin_image_support]
simp only [not_exists, Set.mem_image, to_power_series_symm_apply_coeff, mem_support,
PowerSeries.coeff_x]
mathlib commit https://github.com/leanprover-community/mathlib/commit/3180fab693e2cee3bff62675571264cb8778b212
@@ -668,7 +668,7 @@ theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {
apply sum_subset_zero_on_sdiff (add_antidiagonal_mono_right hys) _ fun _ _ => rfl
intro b hb
simp only [not_and, mem_sdiff, mem_add_antidiagonal, mem_support, not_imp_not] at hb
- rw [hb.2 hb.1.1 hb.1.2.2, mul_zero]
+ rw [hb.2 hb.1.1 hb.1.2.2, MulZeroClass.mul_zero]
#align hahn_series.mul_coeff_right' HahnSeries.mul_coeff_right'
theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
@@ -680,7 +680,7 @@ theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a
apply sum_subset_zero_on_sdiff (add_antidiagonal_mono_left hxs) _ fun _ _ => rfl
intro b hb
simp only [not_and', mem_sdiff, mem_add_antidiagonal, mem_support, not_ne_iff] at hb
- rw [hb.2 ⟨hb.1.2.1, hb.1.2.2⟩, zero_mul]
+ rw [hb.2 ⟨hb.1.2.1, hb.1.2.2⟩, MulZeroClass.zero_mul]
#align hahn_series.mul_coeff_left' HahnSeries.mul_coeff_left'
instance [NonUnitalNonAssocSemiring R] : Distrib (HahnSeries Γ R) :=
@@ -716,7 +716,7 @@ theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
· simp [hr]
simp only [hr, smul_coeff, mul_coeff, support_single_of_ne, Ne.def, not_false_iff, smul_eq_mul]
by_cases hx : x.coeff a = 0
- · simp only [hx, mul_zero]
+ · simp only [hx, MulZeroClass.mul_zero]
rw [sum_congr _ fun _ _ => rfl, sum_empty]
ext ⟨a1, a2⟩
simp only [not_mem_empty, not_and, Set.mem_singleton_iff, Classical.not_not,
@@ -746,7 +746,7 @@ theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
· simp [hr]
simp only [hr, smul_coeff, mul_coeff, support_single_of_ne, Ne.def, not_false_iff, smul_eq_mul]
by_cases hx : x.coeff a = 0
- · simp only [hx, zero_mul]
+ · simp only [hx, MulZeroClass.zero_mul]
rw [sum_congr _ fun _ _ => rfl, sum_empty]
ext ⟨a1, a2⟩
simp only [not_mem_empty, not_and, Set.mem_singleton_iff, Classical.not_not,
@@ -1639,8 +1639,8 @@ theorem smul_apply {x : HahnSeries Γ R} {s : SummableFamily Γ R α} {a : α} :
instance : Module (HahnSeries Γ R) (SummableFamily Γ R α)
where
smul := (· • ·)
- smul_zero x := ext fun a => mul_zero _
- zero_smul x := ext fun a => zero_mul _
+ smul_zero x := ext fun a => MulZeroClass.mul_zero _
+ zero_smul x := ext fun a => MulZeroClass.zero_mul _
one_smul x := ext fun a => one_mul _
add_smul x y s := ext fun a => add_mul _ _ _
smul_add x s t := ext fun a => mul_add _ _ _
@@ -1660,12 +1660,12 @@ theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s)
· refine' sum_subset (add_antidiagonal_mono_right (Set.subset_unionᵢ _ a)) _
rintro ⟨i, j⟩ hU ha
rw [mem_add_antidiagonal] at *
- rw [Classical.not_not.1 fun con => ha ⟨hU.1, Con, hU.2.2⟩, mul_zero]
+ rw [Classical.not_not.1 fun con => ha ⟨hU.1, Con, hU.2.2⟩, MulZeroClass.mul_zero]
· rintro ⟨i, j⟩ hij
refine' (s.finite_co_support j).Subset _
simp_rw [Function.support_subset_iff', Function.mem_support, Classical.not_not]
intro a ha
- rw [ha, mul_zero]
+ rw [ha, MulZeroClass.mul_zero]
· refine' (sum_congr rfl _).trans (sum_subset (add_antidiagonal_mono_right _) _).symm
· rintro ⟨i, j⟩ hij
rw [mul_finsum]
@@ -1676,7 +1676,8 @@ theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s)
simp [hx]
· rintro ⟨i, j⟩ hU ha
rw [mem_add_antidiagonal] at *
- rw [← hsum_coeff, Classical.not_not.1 fun con => ha ⟨hU.1, Con, hU.2.2⟩, mul_zero]
+ rw [← hsum_coeff, Classical.not_not.1 fun con => ha ⟨hU.1, Con, hU.2.2⟩,
+ MulZeroClass.mul_zero]
#align hahn_series.summable_family.hsum_smul HahnSeries.SummableFamily.hsum_smul
/-- The summation of a `summable_family` as a `linear_map`. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/62e8311c791f02c47451bf14aa2501048e7c2f33
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Aaron Anderson
! This file was ported from Lean 3 source module ring_theory.hahn_series
-! leanprover-community/mathlib commit b1d911acd60ab198808e853292106ee352b648ea
+! leanprover-community/mathlib commit a484a7d0eade4e1268f4fb402859b6686037f965
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -490,6 +490,14 @@ theorem sub_coeff {x y : HahnSeries Γ R} {a : Γ} : (x - y).coeff a = x.coeff a
simp
#align hahn_series.sub_coeff HahnSeries.sub_coeff
+@[simp]
+theorem order_neg [Zero Γ] {f : HahnSeries Γ R} : (-f).order = f.order :=
+ by
+ by_cases hf : f = 0
+ · simp only [hf, neg_zero]
+ simp only [order, support_neg, neg_eq_zero]
+#align hahn_series.order_neg HahnSeries.order_neg
+
end AddGroup
instance [AddCommGroup R] : AddCommGroup (HahnSeries Γ R) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
@@ -383,7 +383,7 @@ theorem order_ofForallLtEqZero [Zero Γ] (f : Γ → R) (hf : f ≠ 0) (n : Γ)
dsimp only [order]
by_cases h : ofSuppBddBelow f (forallLTEqZero_supp_BddBelow f n hn) = 0
cases h
- exact (hf rfl).elim
+ · exact (hf rfl).elim
simp_all only [dite_false]
rw [Set.IsWF.le_min_iff]
intro m hm
On nightly-testing
ofPowerSeries_X_pow
becomes a bad simp lemma, because the LHS will simplify. Fix this by adding the missing lemma so the whole proof is just by simp
, and remove @[simp]
.
Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
@@ -142,15 +142,9 @@ theorem ofPowerSeries_X : ofPowerSeries Γ R PowerSeries.X = single 1 1 := by
simp (config := { contextual := true }) [Ne.symm hn]
#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_X
-@[simp]
-theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
+theorem ofPowerSeries_X_pow {R} [Semiring R] (n : ℕ) :
ofPowerSeries Γ R (PowerSeries.X ^ n) = single (n : Γ) 1 := by
- rw [RingHom.map_pow]
- induction' n with n ih
- · simp
- rfl
- · rw [pow_succ, ih, ofPowerSeries_X, mul_comm, single_mul_single, one_mul,
- Nat.cast_succ, add_comm]
+ simp
#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_pow
-- Lemmas about converting hahn_series over fintype to and from mv_power_series
On nightly-testing
ofPowerSeries_X_pow
becomes a bad simp lemma, because the LHS will simplify. Fix this by adding the missing lemma so the whole proof is just by simp
, and remove @[simp]
.
Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
@@ -442,6 +442,18 @@ theorem single_mul_single {a b : Γ} {r s : R} :
end NonUnitalNonAssocSemiring
+section Semiring
+
+variable [Semiring R]
+
+@[simp]
+theorem single_pow (a : Γ) (n : ℕ) (r : R) : single a r ^ n = single (n • a) (r ^ n) := by
+ induction' n with n IH
+ · simp; rfl
+ · rw [pow_succ, pow_succ, IH, single_mul_single, succ_nsmul]
+
+end Semiring
+
section NonAssocSemiring
variable [NonAssocSemiring R]
NNRat.cast
(#11203)
Define the canonical coercion from the nonnegative rationals to any division semiring.
From LeanAPAP
@@ -588,6 +588,7 @@ instance instField [Field R] : Field (HahnSeries Γ R) where
(unit_aux x (inv_mul_cancel (coeff_order_ne_zero x0)))
rw [sub_sub_cancel] at h
rw [← mul_assoc, mul_comm x, h]
+ nnqsmul := _
qsmul := _
end Inversion
NNRat.cast
(#12360)
This is the parts of the diff of #11203 which don't mention NNRat.cast
.
where
notation.qsmul := _
instead of qsmul := qsmulRec _
to make the instances more robust to definition changes.qsmulRec
.qsmul
before ratCast_def
in instance declarations.rat_smul
to qsmul
.@@ -574,23 +574,21 @@ theorem isUnit_iff {x : HahnSeries Γ R} : IsUnit x ↔ IsUnit (x.coeff x.order)
end IsDomain
-instance [Field R] : Field (HahnSeries Γ R) :=
- { inferInstanceAs (IsDomain (HahnSeries Γ R)),
- inferInstanceAs (CommRing (HahnSeries Γ R)) with
- inv := fun x =>
- if x0 : x = 0 then 0
- else
- C (x.coeff x.order)⁻¹ * (single (-x.order)) 1 *
- (SummableFamily.powers _ (unit_aux x (inv_mul_cancel (coeff_order_ne_zero x0)))).hsum
- inv_zero := dif_pos rfl
- mul_inv_cancel := fun x x0 => by
- refine' (congr rfl (dif_neg x0)).trans _
- have h :=
- SummableFamily.one_sub_self_mul_hsum_powers
- (unit_aux x (inv_mul_cancel (coeff_order_ne_zero x0)))
- rw [sub_sub_cancel] at h
- rw [← mul_assoc, mul_comm x, h]
- qsmul := qsmulRec _ }
+instance instField [Field R] : Field (HahnSeries Γ R) where
+ __ : IsDomain (HahnSeries Γ R) := inferInstance
+ inv x :=
+ if x0 : x = 0 then 0
+ else
+ C (x.coeff x.order)⁻¹ * (single (-x.order)) 1 *
+ (SummableFamily.powers _ (unit_aux x (inv_mul_cancel (coeff_order_ne_zero x0)))).hsum
+ inv_zero := dif_pos rfl
+ mul_inv_cancel x x0 := (congr rfl (dif_neg x0)).trans $ by
+ have h :=
+ SummableFamily.one_sub_self_mul_hsum_powers
+ (unit_aux x (inv_mul_cancel (coeff_order_ne_zero x0)))
+ rw [sub_sub_cancel] at h
+ rw [← mul_assoc, mul_comm x, h]
+ qsmul := _
end Inversion
RingTheory.Ideal.Operations
; clean imports (#12090)
This is based on seeing the import RingTheory.Ideal.Operations
→ LinearAlgebra.Basis
on the longest pole. It feels like Ideal.Operations
is a bit of a chokepoint for compiling Mathlib since it imports many files and is imported by many files. So splitting out a few obvious parts should help with compile times. Moreover, there are a bunch of imports that I could remove and have the file still compile: presumably these are (were) transitive dependencies that shake does not remove.
The following results and their corollaries were split off:
Ideal.basisSpanSingleton
Basis.mem_ideal_iff
Ideal.colon
In particular, now Ideal.Operations
should no longer need to know about Basis
or submodule quotients.
@@ -3,9 +3,10 @@ Copyright (c) 2021 Aaron Anderson. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Aaron Anderson
-/
-import Mathlib.RingTheory.HahnSeries.Multiplication
+import Mathlib.Algebra.BigOperators.Finprod
import Mathlib.Algebra.EuclideanDomain.Instances
import Mathlib.Algebra.Order.Group.WithTop
+import Mathlib.RingTheory.HahnSeries.Multiplication
import Mathlib.RingTheory.Valuation.Basic
#align_import ring_theory.hahn_series from "leanprover-community/mathlib"@"a484a7d0eade4e1268f4fb402859b6686037f965"
RingTheory.Ideal.Operations
; clean imports (#12090)
This is based on seeing the import RingTheory.Ideal.Operations
→ LinearAlgebra.Basis
on the longest pole. It feels like Ideal.Operations
is a bit of a chokepoint for compiling Mathlib since it imports many files and is imported by many files. So splitting out a few obvious parts should help with compile times. Moreover, there are a bunch of imports that I could remove and have the file still compile: presumably these are (were) transitive dependencies that shake does not remove.
The following results and their corollaries were split off:
Ideal.basisSpanSingleton
Basis.mem_ideal_iff
Ideal.colon
In particular, now Ideal.Operations
should no longer need to know about Basis
or submodule quotients.
@@ -3,7 +3,6 @@ Copyright (c) 2021 Aaron Anderson. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Aaron Anderson, Scott Carnahan
-/
-import Mathlib.Algebra.BigOperators.Finprod
import Mathlib.RingTheory.HahnSeries.Addition
import Mathlib.Algebra.Algebra.Subalgebra.Basic
import Mathlib.Data.Finset.MulAntidiagonal
These are changes from #11997, the latest adaptation PR for nightly-2024-04-07, which can be made directly on master.
Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Ruben Van de Velde <65514131+Ruben-VandeVelde@users.noreply.github.com>
@@ -251,7 +251,7 @@ instance : Neg (SummableFamily Γ R α) :=
simp_rw [support_neg]
exact s.isPWO_iUnion_support
finite_co_support' := fun g => by
- simp only [neg_coeff', Pi.neg_apply, Ne.def, neg_eq_zero]
+ simp only [neg_coeff', Pi.neg_apply, Ne, neg_eq_zero]
exact s.finite_co_support g }⟩
instance : AddCommGroup (SummableFamily Γ R α) :=
@@ -344,7 +344,7 @@ theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s)
rw [mul_finsum]
apply s.finite_co_support
· intro x hx
- simp only [Set.mem_iUnion, Ne.def, mem_support]
+ simp only [Set.mem_iUnion, Ne, mem_support]
contrapose! hx
simp [hx]
· rintro ⟨i, j⟩ hU ha
@@ -385,7 +385,7 @@ def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α where
exact Set.mem_biUnion haf hg
finite_co_support' g := by
refine' f.support.finite_toSet.subset fun a ha => _
- simp only [coeff.addMonoidHom_apply, mem_coe, Finsupp.mem_support_iff, Ne.def,
+ simp only [coeff.addMonoidHom_apply, mem_coe, Finsupp.mem_support_iff, Ne,
Function.mem_support]
contrapose! ha
simp [ha]
@@ -399,11 +399,11 @@ theorem coe_ofFinsupp {f : α →₀ HahnSeries Γ R} : ⇑(SummableFamily.ofFin
@[simp]
theorem hsum_ofFinsupp {f : α →₀ HahnSeries Γ R} : (ofFinsupp f).hsum = f.sum fun _ => id := by
ext g
- simp only [hsum_coeff, coe_ofFinsupp, Finsupp.sum, Ne.def]
- simp_rw [← coeff.addMonoidHom_apply, id.def]
+ simp only [hsum_coeff, coe_ofFinsupp, Finsupp.sum, Ne]
+ simp_rw [← coeff.addMonoidHom_apply, id]
rw [map_sum, finsum_eq_sum_of_support_subset]
intro x h
- simp only [coeff.addMonoidHom_apply, mem_coe, Finsupp.mem_support_iff, Ne.def]
+ simp only [coeff.addMonoidHom_apply, mem_coe, Finsupp.mem_support_iff, Ne]
contrapose! h
simp [h]
#align hahn_series.summable_family.hsum_of_finsupp HahnSeries.SummableFamily.hsum_ofFinsupp
@@ -429,9 +429,9 @@ def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R
(by
intro b h
by_cases hb : b ∈ Set.range f
- · simp only [Ne.def, Set.mem_setOf_eq, dif_pos hb] at h
+ · simp only [Ne, Set.mem_setOf_eq, dif_pos hb] at h
exact ⟨Classical.choose hb, h, Classical.choose_spec hb⟩
- · simp only [Ne.def, Set.mem_setOf_eq, dif_neg hb, zero_coeff, not_true_eq_false] at h)
+ · simp only [Ne, Set.mem_setOf_eq, dif_neg hb, zero_coeff, not_true_eq_false] at h)
#align hahn_series.summable_family.emb_domain HahnSeries.SummableFamily.embDomain
variable (s : SummableFamily Γ R α) (f : α ↪ β) {a : α} {b : β}
@@ -492,7 +492,7 @@ def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R
· obtain ⟨i, hi, j, hj, rfl⟩ := support_mul_subset_add_support hn
refine' Set.mem_union_left _ ⟨n, Set.mem_iUnion.2 ⟨⟨j, i⟩, Set.mem_iUnion.2 ⟨_, hi⟩⟩, rfl⟩
simp only [and_true_iff, Set.mem_iUnion, mem_addAntidiagonal, mem_coe, eq_self_iff_true,
- Ne.def, mem_support, Set.mem_setOf_eq]
+ Ne, mem_support, Set.mem_setOf_eq]
exact ⟨hj, ⟨n, hi⟩, add_comm j i⟩
#align hahn_series.summable_family.powers HahnSeries.SummableFamily.powers
@@ -548,7 +548,7 @@ theorem unit_aux (x : HahnSeries Γ R) {r : R} (hr : r * x.coeff x.order = 1) :
· rw [addVal_apply, ← WithTop.coe_zero]
split_ifs with h
· apply WithTop.coe_ne_top
- rw [Ne.def, WithTop.coe_eq_coe]
+ rw [Ne, WithTop.coe_eq_coe]
intro con
apply coeff_order_ne_zero h
rw [← con, mul_assoc, sub_coeff, one_coeff, if_pos rfl, C_mul_eq_smul, smul_coeff, smul_eq_mul,
This PR defines Hasse derivatives of formal Laurent series using integer binomial coefficients, and proves some basic properties.
@@ -358,7 +358,7 @@ theorem suppBddBelow_supp_PWO (f : Γ → R) (hf : BddBelow (Function.support f)
theorem forallLTEqZero_supp_BddBelow (f : Γ → R) (n : Γ) (hn : ∀(m : Γ), m < n → f m = 0) :
BddBelow (Function.support f) := by
- unfold BddBelow Set.Nonempty lowerBounds
+ simp only [BddBelow, Set.Nonempty, lowerBounds]
use n
intro m hm
rw [Function.mem_support, ne_eq] at hm
Data
(#11751)
Polynomial
and MvPolynomial
are algebraic objects, hence should be under Algebra
(or at least not under Data
)
@@ -74,7 +74,7 @@ end HahnSeries
/-- We introduce a type alias for `HahnSeries` in order to work with scalar multiplication by
series. If we wrote a `SMul (HahnSeries Γ R) (HahnSeries Γ V)` instance, then when
`V = HahnSeries Γ R`, we would have two different actions of `HahnSeries Γ R` on `HahnSeries Γ V`.
-See `Mathlib.Data.Polynomial.Module` for more discussion on this problem. -/
+See `Mathlib.Algebra.Polynomial.Module` for more discussion on this problem. -/
@[nolint unusedArguments]
def HahnModule (Γ R V : Type*) [PartialOrder Γ] [Zero V] [SMul R V] :=
HahnSeries Γ V
Data
(#11751)
Polynomial
and MvPolynomial
are algebraic objects, hence should be under Algebra
(or at least not under Data
)
@@ -135,7 +135,7 @@ def of_iterate {Γ' : Type*} [PartialOrder Γ'] (x : HahnSeries Γ (HahnSeries
rw [hn] at hf
exact hf rfl
sorry
--- See Mathlib.Data.MvPolynomial.Monad for join and bind operations
+-- See Mathlib.Algebra.MvPolynomial.Monad for join and bind operations
need a monotone pair. have:
nonrec theorem IsPWO.exists_monotone_subseq (h : s.IsPWO) (f : ℕ → α) (hf : ∀ n, f n ∈ s) :
∃ g : ℕ ↪o ℕ, Monotone (f ∘ g) :=
@@ -206,7 +206,7 @@ instance [NonUnitalNonAssocSemiring R] : Distrib (HahnSeries Γ R) :=
mul_coeff_right' hwf (Set.subset_union_left _ _)]
· simp only [add_coeff, mul_add, sum_add_distrib]
· intro b
- simp only [add_coeff, Ne.def, Set.mem_union, Set.mem_setOf_eq, mem_support]
+ simp only [add_coeff, Ne, Set.mem_union, Set.mem_setOf_eq, mem_support]
contrapose!
intro h
rw [h.1, h.2, add_zero]
@@ -217,7 +217,7 @@ instance [NonUnitalNonAssocSemiring R] : Distrib (HahnSeries Γ R) :=
mul_coeff_left' hwf (Set.subset_union_left _ _)]
· simp only [add_coeff, add_mul, sum_add_distrib]
· intro b
- simp only [add_coeff, Ne.def, Set.mem_union, Set.mem_setOf_eq, mem_support]
+ simp only [add_coeff, Ne, Set.mem_union, Set.mem_setOf_eq, mem_support]
contrapose!
intro h
rw [h.1, h.2, add_zero] }
@@ -226,7 +226,7 @@ theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
{b : Γ} : (single b r * x).coeff (a + b) = r * x.coeff a := by
by_cases hr : r = 0
· simp [hr, mul_coeff]
- simp only [hr, smul_coeff, mul_coeff, support_single_of_ne, Ne.def, not_false_iff, smul_eq_mul]
+ simp only [hr, smul_coeff, mul_coeff, support_single_of_ne, Ne, not_false_iff, smul_eq_mul]
by_cases hx : x.coeff a = 0
· simp only [hx, mul_zero]
rw [sum_congr _ fun _ _ => rfl, sum_empty]
@@ -255,7 +255,7 @@ theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
{b : Γ} : (x * single b r).coeff (a + b) = x.coeff a * r := by
by_cases hr : r = 0
· simp [hr, mul_coeff]
- simp only [hr, smul_coeff, mul_coeff, support_single_of_ne, Ne.def, not_false_iff, smul_eq_mul]
+ simp only [hr, smul_coeff, mul_coeff, support_single_of_ne, Ne, not_false_iff, smul_eq_mul]
by_cases hx : x.coeff a = 0
· simp only [hx, zero_mul]
rw [sum_congr _ fun _ _ => rfl, sum_empty]
@@ -302,7 +302,7 @@ theorem support_mul_subset_add_support [NonUnitalNonAssocSemiring R] {x y : Hahn
· exact y.isPWO_support
intro x hx
contrapose! hx
- simp only [not_nonempty_iff_eq_empty, Ne.def, Set.mem_setOf_eq] at hx
+ simp only [not_nonempty_iff_eq_empty, Ne, Set.mem_setOf_eq] at hx
simp [hx, mul_coeff]
#align hahn_series.support_mul_subset_add_support HahnSeries.support_mul_subset_add_support
@@ -588,7 +588,7 @@ theorem algebraMap_apply {r : R} : algebraMap R (HahnSeries Γ A) r = C (algebra
instance [Nontrivial Γ] [Nontrivial R] : Nontrivial (Subalgebra R (HahnSeries Γ R)) :=
⟨⟨⊥, ⊤, by
- rw [Ne.def, SetLike.ext_iff, not_forall]
+ rw [Ne, SetLike.ext_iff, not_forall]
obtain ⟨a, ha⟩ := exists_ne (0 : Γ)
refine' ⟨single a 1, _⟩
simp only [Algebra.mem_bot, not_exists, Set.mem_range, iff_true_iff, Algebra.mem_top]
@@ -112,7 +112,7 @@ theorem support_zero : support (0 : HahnSeries Γ R) = ∅ :=
@[simp]
nonrec theorem support_nonempty_iff {x : HahnSeries Γ R} : x.support.Nonempty ↔ x ≠ 0 := by
- rw [support, support_nonempty_iff, Ne.def, coeff_fun_eq_zero_iff]
+ rw [support, support_nonempty_iff, Ne, coeff_fun_eq_zero_iff]
#align hahn_series.support_nonempty_iff HahnSeries.support_nonempty_iff
@[simp]
We change the following field in the definition of an additive commutative monoid:
nsmul_succ : ∀ (n : ℕ) (x : G),
- AddMonoid.nsmul (n + 1) x = x + AddMonoid.nsmul n x
+ AddMonoid.nsmul (n + 1) x = AddMonoid.nsmul n x + x
where the latter is more natural
We adjust the definitions of ^
in monoids, groups, etc.
Originally there was a warning comment about why this natural order was preferred
use
x * npowRec n x
and notnpowRec n x * x
in the definition to make sure that definitional unfolding ofnpowRec
is blocked, to avoid deep recursion issues.
but it seems to no longer apply.
Remarks on the PR :
pow_succ
and pow_succ'
have switched their meanings.Ideal.IsPrime.mul_mem_pow
which is defined in [Mathlib/RingTheory/DedekindDomain/Ideal.lean]. Changing the order of operation forced me to add the symmetric lemma Ideal.IsPrime.mem_pow_mul
.@@ -103,7 +103,7 @@ theorem isPWO_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring
rw [hn, SetLike.mem_coe]
exact AddSubmonoid.zero_mem _
· obtain ⟨i, hi, j, hj, rfl⟩ := support_mul_subset_add_support hn
- exact SetLike.mem_coe.2 (AddSubmonoid.add_mem _ (AddSubmonoid.subset_closure hi) (ih hj))
+ exact SetLike.mem_coe.2 (AddSubmonoid.add_mem _ (ih hi) (AddSubmonoid.subset_closure hj))
#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPWO_iUnion_support_powers
section
@@ -490,10 +490,10 @@ def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R
· rintro (_ | n) hn
· exact Set.mem_union_right _ (Set.mem_singleton 0)
· obtain ⟨i, hi, j, hj, rfl⟩ := support_mul_subset_add_support hn
- refine' Set.mem_union_left _ ⟨n, Set.mem_iUnion.2 ⟨⟨i, j⟩, Set.mem_iUnion.2 ⟨_, hj⟩⟩, rfl⟩
+ refine' Set.mem_union_left _ ⟨n, Set.mem_iUnion.2 ⟨⟨j, i⟩, Set.mem_iUnion.2 ⟨_, hi⟩⟩, rfl⟩
simp only [and_true_iff, Set.mem_iUnion, mem_addAntidiagonal, mem_coe, eq_self_iff_true,
Ne.def, mem_support, Set.mem_setOf_eq]
- exact ⟨hi, n, hj⟩
+ exact ⟨hj, ⟨n, hi⟩, add_comm j i⟩
#align hahn_series.summable_family.powers HahnSeries.SummableFamily.powers
variable {x : HahnSeries Γ R} (hx : 0 < addVal Γ R x)
@@ -513,7 +513,7 @@ theorem embDomain_succ_smul_powers :
rw [Set.mem_range, not_exists]
exact Nat.succ_ne_zero
· refine' Eq.trans (embDomain_image _ ⟨Nat.succ, Nat.succ_injective⟩) _
- simp only [pow_succ, coe_powers, coe_sub, smul_apply, coe_ofFinsupp, Pi.sub_apply]
+ simp only [pow_succ', coe_powers, coe_sub, smul_apply, coe_ofFinsupp, Pi.sub_apply]
rw [Finsupp.single_eq_of_ne n.succ_ne_zero.symm, sub_zero]
#align hahn_series.summable_family.emb_domain_succ_smul_powers HahnSeries.SummableFamily.embDomain_succ_smul_powers
We change the following field in the definition of an additive commutative monoid:
nsmul_succ : ∀ (n : ℕ) (x : G),
- AddMonoid.nsmul (n + 1) x = x + AddMonoid.nsmul n x
+ AddMonoid.nsmul (n + 1) x = AddMonoid.nsmul n x + x
where the latter is more natural
We adjust the definitions of ^
in monoids, groups, etc.
Originally there was a warning comment about why this natural order was preferred
use
x * npowRec n x
and notnpowRec n x * x
in the definition to make sure that definitional unfolding ofnpowRec
is blocked, to avoid deep recursion issues.
but it seems to no longer apply.
Remarks on the PR :
pow_succ
and pow_succ'
have switched their meanings.Ideal.IsPrime.mul_mem_pow
which is defined in [Mathlib/RingTheory/DedekindDomain/Ideal.lean]. Changing the order of operation forced me to add the symmetric lemma Ideal.IsPrime.mem_pow_mul
.@@ -420,7 +420,7 @@ theorem order_pow {Γ} [LinearOrderedCancelAddCommMonoid Γ] [Semiring R] [NoZer
· simp
rcases eq_or_ne x 0 with (rfl | hx)
· simp
- rw [pow_succ', order_mul (pow_ne_zero _ hx) hx, succ_nsmul', IH]
+ rw [pow_succ, order_mul (pow_ne_zero _ hx) hx, succ_nsmul, IH]
#align hahn_series.order_pow HahnSeries.order_pow
section NonUnitalNonAssocSemiring
Finset.preimage
not depend on Finset.sum
(#11601)
and Data.Finset.LocallyFinite
not depend on Finset.sum
too
@@ -3,6 +3,7 @@ Copyright (c) 2021 Aaron Anderson. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Aaron Anderson
-/
+import Mathlib.Algebra.Function.Support
import Mathlib.Order.WellFoundedSet
#align_import ring_theory.hahn_series from "leanprover-community/mathlib"@"a484a7d0eade4e1268f4fb402859b6686037f965"
@@ -30,9 +31,7 @@ in the file `RingTheory/LaurentSeries`.
set_option linter.uppercaseLean3 false
open Finset Function
-
open scoped Classical
-open BigOperators
noncomputable section
Finset.preimage
not depend on Finset.sum
(#11601)
and Data.Finset.LocallyFinite
not depend on Finset.sum
too
@@ -27,7 +27,6 @@ set_option linter.uppercaseLean3 false
open Finset Function
open scoped Classical
-open BigOperators
noncomputable section
These will be caught by the linter in a future lean version.
@@ -431,8 +431,7 @@ def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R
by_cases hb : b ∈ Set.range f
· simp only [Ne.def, Set.mem_setOf_eq, dif_pos hb] at h
exact ⟨Classical.choose hb, h, Classical.choose_spec hb⟩
- · contrapose! h
- simp only [Ne.def, Set.mem_setOf_eq, dif_neg hb, Classical.not_not, zero_coeff])
+ · simp only [Ne.def, Set.mem_setOf_eq, dif_neg hb, zero_coeff, not_true_eq_false] at h)
#align hahn_series.summable_family.emb_domain HahnSeries.SummableFamily.embDomain
variable (s : SummableFamily Γ R α) (f : α ↪ β) {a : α} {b : β}
These will be caught by the linter in a future lean version.
@@ -423,9 +423,7 @@ def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R
· dsimp only at h
rw [dif_pos hb] at h
exact Set.mem_iUnion.2 ⟨Classical.choose hb, h⟩
- · contrapose! h
- rw [dif_neg hb]
- simp
+ · simp [-Set.mem_range, dif_neg hb] at h
finite_co_support' g :=
((s.finite_co_support g).image f).subset
(by
@@ -154,13 +154,13 @@ theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_pow
-- Lemmas about converting hahn_series over fintype to and from mv_power_series
-/-- The ring `HahnSeries (σ →₀ ℕ) R` is isomorphic to `MvPowerSeries σ R` for a `Fintype` `σ`.
+/-- The ring `HahnSeries (σ →₀ ℕ) R` is isomorphic to `MvPowerSeries σ R` for a `Finite` `σ`.
We take the index set of the hahn series to be `Finsupp` rather than `pi`,
-even though we assume `Fintype σ` as this is more natural for alignment with `MvPowerSeries`.
+even though we assume `Finite σ` as this is more natural for alignment with `MvPowerSeries`.
After importing `Algebra.Order.Pi` the ring `HahnSeries (σ → ℕ) R` could be constructed instead.
-/
@[simps]
-def toMvPowerSeries {σ : Type*} [Fintype σ] : HahnSeries (σ →₀ ℕ) R ≃+* MvPowerSeries σ R where
+def toMvPowerSeries {σ : Type*} [Finite σ] : HahnSeries (σ →₀ ℕ) R ≃+* MvPowerSeries σ R where
toFun f := f.coeff
invFun f := ⟨(f : (σ →₀ ℕ) → R), Finsupp.isPWO _⟩
left_inv f := by
@@ -187,7 +187,7 @@ def toMvPowerSeries {σ : Type*} [Fintype σ] : HahnSeries (σ →₀ ℕ) R ≃
rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_mv_power_series HahnSeries.toMvPowerSeries
-variable {σ : Type*} [Fintype σ]
+variable {σ : Type*} [Finite σ]
theorem coeff_toMvPowerSeries {f : HahnSeries (σ →₀ ℕ) R} {n : σ →₀ ℕ} :
MvPowerSeries.coeff R n (toMvPowerSeries f) = f.coeff n :=
Given a locally finite linearly ordered set Γ
and a function f
on Γ
whose support is bounded below, we produce a Hahn series whose coefficients are given by f
. We introduce a theorem (borrowing from mathlib3 #18604) for translating the vanishing condition to the partially well-ordered support condition that is used in the definition of Hahn Series.
@@ -350,4 +350,47 @@ end Domain
end Zero
+section LocallyFiniteLinearOrder
+
+variable [Zero R] [LinearOrder Γ] [LocallyFiniteOrder Γ]
+
+theorem suppBddBelow_supp_PWO (f : Γ → R) (hf : BddBelow (Function.support f)) :
+ (Function.support f).IsPWO := Set.isWF_iff_isPWO.mp hf.wellFoundedOn_lt
+
+theorem forallLTEqZero_supp_BddBelow (f : Γ → R) (n : Γ) (hn : ∀(m : Γ), m < n → f m = 0) :
+ BddBelow (Function.support f) := by
+ unfold BddBelow Set.Nonempty lowerBounds
+ use n
+ intro m hm
+ rw [Function.mem_support, ne_eq] at hm
+ exact not_lt.mp (mt (hn m) hm)
+
+/-- Construct a Hahn series from any function whose support is bounded below. -/
+@[simps]
+def ofSuppBddBelow (f : Γ → R) (hf : BddBelow (Function.support f)) : HahnSeries Γ R where
+ coeff := f
+ isPWO_support' := suppBddBelow_supp_PWO f hf
+
+theorem BddBelow_zero [Nonempty Γ] : BddBelow (Function.support (0 : Γ → R)) := by
+ simp only [support_zero', bddBelow_empty]
+
+@[simp]
+theorem zero_ofSuppBddBelow [Nonempty Γ] : ofSuppBddBelow 0 BddBelow_zero = (0 : HahnSeries Γ R) :=
+ rfl
+
+theorem order_ofForallLtEqZero [Zero Γ] (f : Γ → R) (hf : f ≠ 0) (n : Γ)
+ (hn : ∀(m : Γ), m < n → f m = 0) :
+ n ≤ order (ofSuppBddBelow f (forallLTEqZero_supp_BddBelow f n hn)) := by
+ dsimp only [order]
+ by_cases h : ofSuppBddBelow f (forallLTEqZero_supp_BddBelow f n hn) = 0
+ cases h
+ exact (hf rfl).elim
+ simp_all only [dite_false]
+ rw [Set.IsWF.le_min_iff]
+ intro m hm
+ rw [HahnSeries.support, Function.mem_support, ne_eq] at hm
+ exact not_lt.mp (mt (hn m) hm)
+
+end LocallyFiniteLinearOrder
+
end HahnSeries
@@ -591,7 +591,8 @@ instance [Field R] : Field (HahnSeries Γ R) :=
SummableFamily.one_sub_self_mul_hsum_powers
(unit_aux x (inv_mul_cancel (coeff_order_ne_zero x0)))
rw [sub_sub_cancel] at h
- rw [← mul_assoc, mul_comm x, h] }
+ rw [← mul_assoc, mul_comm x, h]
+ qsmul := qsmulRec _ }
end Inversion
nsmul
and zsmul
to default automatically (#6262)
This PR removes the default values for nsmul
and zsmul
, forcing the user to populate them manually.
The previous behavior can be obtained by writing nsmul := nsmulRec
and zsmul := zsmulRec
, which is now in the docstring for these fields.
The motivation here is to make it more obvious when module diamonds are being introduced, or at least where they might be hiding; you can now simply search for nsmulRec
in the source code.
Arguably we should do the same thing for intCast
, natCast
, pow
, and zpow
too, but diamonds are less common in those fields, so I'll leave them to a subsequent PR.
Co-authored-by: Matthew Ballard <matt@mrb.email>
@@ -191,8 +191,8 @@ theorem zero_apply {a : α} : (0 : SummableFamily Γ R α) a = 0 :=
#align hahn_series.summable_family.zero_apply HahnSeries.SummableFamily.zero_apply
instance : AddCommMonoid (SummableFamily Γ R α) where
- add := (· + ·)
zero := 0
+ nsmul := nsmulRec
zero_add s := by
ext
apply zero_add
@@ -244,16 +244,19 @@ section AddCommGroup
variable [PartialOrder Γ] [AddCommGroup R] {α : Type*} {s t : SummableFamily Γ R α} {a : α}
+instance : Neg (SummableFamily Γ R α) :=
+ ⟨fun s =>
+ { toFun := fun a => -s a
+ isPWO_iUnion_support' := by
+ simp_rw [support_neg]
+ exact s.isPWO_iUnion_support
+ finite_co_support' := fun g => by
+ simp only [neg_coeff', Pi.neg_apply, Ne.def, neg_eq_zero]
+ exact s.finite_co_support g }⟩
+
instance : AddCommGroup (SummableFamily Γ R α) :=
{ inferInstanceAs (AddCommMonoid (SummableFamily Γ R α)) with
- neg := fun s =>
- { toFun := fun a => -s a
- isPWO_iUnion_support' := by
- simp_rw [support_neg]
- exact s.isPWO_iUnion_support'
- finite_co_support' := fun g => by
- simp only [neg_coeff', Pi.neg_apply, Ne.def, neg_eq_zero]
- exact s.finite_co_support g }
+ zsmul := zsmulRec
add_left_neg := fun a => by
ext
apply add_left_neg }
nsmul
and zsmul
to default automatically (#6262)
This PR removes the default values for nsmul
and zsmul
, forcing the user to populate them manually.
The previous behavior can be obtained by writing nsmul := nsmulRec
and zsmul := zsmulRec
, which is now in the docstring for these fields.
The motivation here is to make it more obvious when module diamonds are being introduced, or at least where they might be hiding; you can now simply search for nsmulRec
in the source code.
Arguably we should do the same thing for intCast
, natCast
, pow
, and zpow
too, but diamonds are less common in those fields, so I'll leave them to a subsequent PR.
Co-authored-by: Matthew Ballard <matt@mrb.email>
@@ -51,6 +51,7 @@ instance : Add (HahnSeries Γ R) where
instance : AddMonoid (HahnSeries Γ R) where
zero := 0
add := (· + ·)
+ nsmul := nsmulRec
add_assoc x y z := by
ext
apply add_assoc
@@ -131,13 +132,16 @@ section AddGroup
variable [AddGroup R]
+instance : Neg (HahnSeries Γ R) where
+ neg x :=
+ { coeff := fun a => -x.coeff a
+ isPWO_support' := by
+ rw [Function.support_neg]
+ exact x.isPWO_support }
+
instance : AddGroup (HahnSeries Γ R) :=
{ inferInstanceAs (AddMonoid (HahnSeries Γ R)) with
- neg := fun x =>
- { coeff := fun a => -x.coeff a
- isPWO_support' := by
- rw [Function.support_neg]
- exact x.isPWO_support }
+ zsmul := zsmulRec
add_left_neg := fun x => by
ext
apply add_left_neg }
open Classical
(#11199)
We remove all but one open Classical
s, instead preferring to use open scoped Classical
. The only real side-effect this led to is moving a couple declarations to use Exists.choose
instead of Classical.choose
.
The first few commits are explicitly labelled regex replaces for ease of review.
@@ -36,7 +36,8 @@ set_option linter.uppercaseLean3 false
open Finset Function
-open BigOperators Classical Pointwise
+open scoped Classical
+open BigOperators Pointwise
noncomputable section
open Classical
(#11199)
We remove all but one open Classical
s, instead preferring to use open scoped Classical
. The only real side-effect this led to is moving a couple declarations to use Exists.choose
instead of Classical.choose
.
The first few commits are explicitly labelled regex replaces for ease of review.
@@ -32,7 +32,8 @@ set_option linter.uppercaseLean3 false
open Finset Function
-open BigOperators Classical Pointwise Polynomial
+open scoped Classical
+open BigOperators Pointwise Polynomial
noncomputable section
open Classical
(#11199)
We remove all but one open Classical
s, instead preferring to use open scoped Classical
. The only real side-effect this led to is moving a couple declarations to use Exists.choose
instead of Classical.choose
.
The first few commits are explicitly labelled regex replaces for ease of review.
@@ -30,7 +30,8 @@ set_option linter.uppercaseLean3 false
open Finset Function
-open BigOperators Classical Pointwise
+open scoped Classical
+open BigOperators Pointwise
noncomputable section
open Classical
(#11199)
We remove all but one open Classical
s, instead preferring to use open scoped Classical
. The only real side-effect this led to is moving a couple declarations to use Exists.choose
instead of Classical.choose
.
The first few commits are explicitly labelled regex replaces for ease of review.
@@ -31,7 +31,8 @@ set_option linter.uppercaseLean3 false
open Finset Function
-open BigOperators Classical
+open scoped Classical
+open BigOperators
noncomputable section
open Classical
(#11199)
We remove all but one open Classical
s, instead preferring to use open scoped Classical
. The only real side-effect this led to is moving a couple declarations to use Exists.choose
instead of Classical.choose
.
The first few commits are explicitly labelled regex replaces for ease of review.
@@ -26,7 +26,8 @@ set_option linter.uppercaseLean3 false
open Finset Function
-open BigOperators Classical
+open scoped Classical
+open BigOperators
noncomputable section
simp can prove
porting notes (#10930)
Classify by adding issue number (#10618) to porting notes claiming anything semantically equivalent to
simp
can prove this"simp
can simplify this`"@[simp]
, now can be proved by simp
"@[simp]
, but simp
can prove it"simp
"simp
can already prove this"simp
already proves this"simp
can prove these"@@ -458,12 +458,12 @@ def C : R →+* HahnSeries Γ R where
map_mul' x y := by rw [single_mul_single, zero_add]
#align hahn_series.C HahnSeries.C
---@[simp] Porting note: simp can prove it
+--@[simp] Porting note (#10618): simp can prove it
theorem C_zero : C (0 : R) = (0 : HahnSeries Γ R) :=
C.map_zero
#align hahn_series.C_zero HahnSeries.C_zero
---@[simp] Porting note: simp can prove it
+--@[simp] Porting note (#10618): simp can prove it
theorem C_one : C (1 : R) = (1 : HahnSeries Γ R) :=
C.map_one
#align hahn_series.C_one HahnSeries.C_one
simp can prove
porting notes (#10930)
Classify by adding issue number (#10618) to porting notes claiming anything semantically equivalent to
simp
can prove this"simp
can simplify this`"@[simp]
, now can be proved by simp
"@[simp]
, but simp
can prove it"simp
"simp
can already prove this"simp
already proves this"simp
can prove these"@@ -193,7 +193,7 @@ theorem eq_of_mem_support_single {b : Γ} (h : b ∈ support (single a r)) : b =
support_single_subset h
#align hahn_series.eq_of_mem_support_single HahnSeries.eq_of_mem_support_single
---@[simp] Porting note: simp can prove it
+--@[simp] Porting note (#10618): simp can prove it
theorem single_eq_zero : single a (0 : R) = 0 :=
(single a).map_zero
#align hahn_series.single_eq_zero HahnSeries.single_eq_zero
refine
s (#10762)
I replaced a few "terminal" refine/refine'
s with exact
.
The strategy was very simple-minded: essentially any refine
whose following line had smaller indentation got replaced by exact
and then I cleaned up the mess.
This PR certainly leaves some further terminal refine
s, but maybe the current change is beneficial.
@@ -244,7 +244,7 @@ theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
constructor
· rintro ⟨rfl, _, h1⟩
rw [add_comm] at h1
- refine' ⟨rfl, add_right_cancel h1⟩
+ exact ⟨rfl, add_right_cancel h1⟩
· rintro ⟨rfl, rfl⟩
exact ⟨rfl, by simp [hx], add_comm _ _⟩
· simp
@@ -271,7 +271,7 @@ theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
Set.mem_setOf_eq]
constructor
· rintro ⟨_, rfl, h1⟩
- refine' ⟨add_right_cancel h1, rfl⟩
+ exact ⟨add_right_cancel h1, rfl⟩
· rintro ⟨rfl, rfl⟩
simp [hx]
· simp
@@ -536,7 +536,7 @@ theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
obtain ⟨_, hi, _, hj, rfl⟩ := support_mul_subset_add_support ((mem_support _ _).2 hg)
obtain ⟨i, _, rfl⟩ := support_embDomain_subset hi
obtain ⟨j, _, rfl⟩ := support_embDomain_subset hj
- refine' ⟨i + j, hf i j⟩
+ exact ⟨i + j, hf i j⟩
#align hahn_series.emb_domain_mul HahnSeries.embDomain_mul
theorem embDomain_one [NonAssocSemiring R] (f : Γ ↪o Γ') (hf : f 0 = 0) :
The HahnSeries file is approaching 2000 lines, and I was hoping to add some more material on Hahn series in the near future. This PR splits the material roughly according to what structure we see in the coefficients: Basic
assumes that the coefficient type R
has zero, Addition
assumes addition, Multiplication
more or less assumes some multiplicative structure.
The HahnSeries file is approaching 2000 lines, and I was hoping to add some more material on Hahn series in the near future. This PR splits the material roughly according to what structure we see in the coefficients: Basic
assumes that the coefficient type R
has zero, Addition
assumes addition, Multiplication
more or less assumes some multiplicative structure.
The HahnSeries file is approaching 2000 lines, and I was hoping to add some more material on Hahn series in the near future. This PR splits the material roughly according to what structure we see in the coefficients: Basic
assumes that the coefficient type R
has zero, Addition
assumes addition, Multiplication
more or less assumes some multiplicative structure.
The HahnSeries file is approaching 2000 lines, and I was hoping to add some more material on Hahn series in the near future. This PR splits the material roughly according to what structure we see in the coefficients: Basic
assumes that the coefficient type R
has zero, Addition
assumes addition, Multiplication
more or less assumes some multiplicative structure.
The HahnSeries file is approaching 2000 lines, and I was hoping to add some more material on Hahn series in the near future. This PR splits the material roughly according to what structure we see in the coefficients: Basic
assumes that the coefficient type R
has zero, Addition
assumes addition, Multiplication
more or less assumes some multiplicative structure.
Given a SMul R V
instance, we introduce HahnModule Γ R V
as an alias for HahnSeries Γ V, and produce a SMul (HahnSeries Γ R) (HahnModule Γ R V)
instance. We use the SMul
instance to shorten the Mul
instance. We will work our way up to Module (HahnSeries Γ R) (HahnModule Γ R V)
in a later PR.
Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
@@ -588,10 +588,14 @@ end Domain
end Module
+end HahnSeries
+
section Multiplication
variable [OrderedCancelAddCommMonoid Γ]
+namespace HahnSeries
+
instance [Zero R] [One R] : One (HahnSeries Γ R) :=
⟨single 0 1⟩
@@ -618,15 +622,55 @@ theorem order_one [MulZeroOneClass R] : order (1 : HahnSeries Γ R) = 0 := by
· exact order_single one_ne_zero
#align hahn_series.order_one HahnSeries.order_one
-instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R) where
- mul x y :=
- { coeff := fun a =>
- ∑ ij in addAntidiagonal x.isPWO_support y.isPWO_support a, x.coeff ij.fst * y.coeff ij.snd
- isPWO_support' :=
+end HahnSeries
+
+/-- We introduce a type alias for `HahnSeries` in order to work with scalar multiplication by
+series. If we wrote a `SMul (HahnSeries Γ R) (HahnSeries Γ V)` instance, then when
+`V = HahnSeries Γ R`, we would have two different actions of `HahnSeries Γ R` on `HahnSeries Γ V`.
+See `Mathlib.Data.Polynomial.Module` for more discussion on this problem. -/
+@[nolint unusedArguments]
+def HahnModule (Γ R V : Type*) [PartialOrder Γ] [Zero V] [SMul R V] :=
+ HahnSeries Γ V
+
+namespace HahnModule
+
+/-- The casting function to the type synonym. -/
+def of {Γ : Type*} (R : Type*) {V : Type*} [PartialOrder Γ] [Zero V] [SMul R V] :
+ HahnSeries Γ V ≃ HahnModule Γ R V := Equiv.refl _
+
+/-- Recursion principle to reduce a result about the synonym to the original type. -/
+@[elab_as_elim]
+def rec {Γ R V : Type*} [PartialOrder Γ] [Zero V] [SMul R V] {motive : HahnModule Γ R V → Sort*}
+ (h : ∀ x : HahnSeries Γ V, motive (of R x)) : ∀ x, motive x :=
+ fun x => h <| (of R).symm x
+
+@[ext]
+theorem ext {Γ R V : Type*} [PartialOrder Γ] [Zero V] [SMul R V]
+ (x y : HahnModule Γ R V) (h : ((of R).symm x).coeff = ((of R).symm y).coeff) : x = y :=
+ (of R).symm.injective <| HahnSeries.coeff_inj.1 h
+
+variable {V : Type*} [AddCommMonoid V] [SMul R V]
+
+instance instAddCommMonoid : AddCommMonoid (HahnModule Γ R V) :=
+ inferInstanceAs <| AddCommMonoid (HahnSeries Γ V)
+
+@[simp] theorem of_zero : of R (0 : HahnSeries Γ V) = 0 := rfl
+@[simp] theorem of_add (x y : HahnSeries Γ V) : of R (x + y) = of R x + of R y := rfl
+
+@[simp] theorem of_symm_zero : (of R).symm (0 : HahnModule Γ R V) = 0 := rfl
+@[simp] theorem of_symm_add (x y : HahnModule Γ R V) :
+ (of R).symm (x + y) = (of R).symm x + (of R).symm y := rfl
+
+instance instSMul [Zero R] : SMul (HahnSeries Γ R) (HahnModule Γ R V) where
+ smul x y := {
+ coeff := fun a =>
+ ∑ ij in addAntidiagonal x.isPWO_support y.isPWO_support a,
+ x.coeff ij.fst • ((of R).symm y).coeff ij.snd
+ isPWO_support' :=
haveI h :
{ a : Γ |
(∑ ij : Γ × Γ in addAntidiagonal x.isPWO_support y.isPWO_support a,
- x.coeff ij.fst * y.coeff ij.snd) ≠
+ x.coeff ij.fst • y.coeff ij.snd) ≠
0 } ⊆
{ a : Γ | (addAntidiagonal x.isPWO_support y.isPWO_support a).Nonempty } := by
intro a ha
@@ -634,6 +678,55 @@ instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R) where
simp [not_nonempty_iff_eq_empty.1 ha]
isPWO_support_addAntidiagonal.mono h }
+theorem smul_coeff [Zero R] (x : HahnSeries Γ R) (y : HahnModule Γ R V) (a : Γ) :
+ ((of R).symm <| x • y).coeff a =
+ ∑ ij in addAntidiagonal x.isPWO_support y.isPWO_support a,
+ x.coeff ij.fst • ((of R).symm y).coeff ij.snd :=
+ rfl
+
+variable {W : Type*} [Zero R] [AddCommMonoid W]
+
+instance instSMulZeroClass [SMulZeroClass R W] :
+ SMulZeroClass (HahnSeries Γ R) (HahnModule Γ R W) where
+ smul_zero x := by
+ ext
+ simp [smul_coeff]
+
+theorem smul_coeff_right [SMulZeroClass R W] {x : HahnSeries Γ R}
+ {y : HahnModule Γ R W} {a : Γ} {s : Set Γ} (hs : s.IsPWO) (hys : ((of R).symm y).support ⊆ s) :
+ ((of R).symm <| x • y).coeff a =
+ ∑ ij in addAntidiagonal x.isPWO_support hs a,
+ x.coeff ij.fst • ((of R).symm y).coeff ij.snd := by
+ rw [smul_coeff]
+ apply sum_subset_zero_on_sdiff (addAntidiagonal_mono_right hys) _ fun _ _ => rfl
+ intro b hb
+ simp only [not_and, mem_sdiff, mem_addAntidiagonal, HahnSeries.mem_support, not_imp_not] at hb
+ rw [hb.2 hb.1.1 hb.1.2.2, smul_zero]
+
+theorem smul_coeff_left [SMulWithZero R W] {x : HahnSeries Γ R}
+ {y : HahnModule Γ R W} {a : Γ} {s : Set Γ}
+ (hs : s.IsPWO) (hxs : x.support ⊆ s) :
+ ((of R).symm <| x • y).coeff a =
+ ∑ ij in addAntidiagonal hs y.isPWO_support a,
+ x.coeff ij.fst • ((of R).symm y).coeff ij.snd := by
+ rw [smul_coeff]
+ apply sum_subset_zero_on_sdiff (addAntidiagonal_mono_left hxs) _ fun _ _ => rfl
+ intro b hb
+ simp only [not_and', mem_sdiff, mem_addAntidiagonal, HahnSeries.mem_support, not_ne_iff] at hb
+ rw [hb.2 ⟨hb.1.2.1, hb.1.2.2⟩, zero_smul]
+
+end HahnModule
+
+namespace HahnSeries
+
+instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R) where
+ mul x y := (HahnModule.of R).symm (x • HahnModule.of R y)
+
+
+theorem of_symm_smul_of_eq_mul [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} :
+ (HahnModule.of R).symm (x • HahnModule.of R y) = x * y := rfl
+
+
/-@[simp] Porting note: removing simp. RHS is more complicated and it makes linter
failures elsewhere-/
theorem mul_coeff [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} :
@@ -645,23 +738,15 @@ theorem mul_coeff [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ}
theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
(hs : s.IsPWO) (hys : y.support ⊆ s) :
(x * y).coeff a =
- ∑ ij in addAntidiagonal x.isPWO_support hs a, x.coeff ij.fst * y.coeff ij.snd := by
- rw [mul_coeff]
- apply sum_subset_zero_on_sdiff (addAntidiagonal_mono_right hys) _ fun _ _ => rfl
- intro b hb
- simp only [not_and, mem_sdiff, mem_addAntidiagonal, mem_support, not_imp_not] at hb
- rw [hb.2 hb.1.1 hb.1.2.2, mul_zero]
+ ∑ ij in addAntidiagonal x.isPWO_support hs a, x.coeff ij.fst * y.coeff ij.snd :=
+ HahnModule.smul_coeff_right hs hys
#align hahn_series.mul_coeff_right' HahnSeries.mul_coeff_right'
theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
(hs : s.IsPWO) (hxs : x.support ⊆ s) :
(x * y).coeff a =
- ∑ ij in addAntidiagonal hs y.isPWO_support a, x.coeff ij.fst * y.coeff ij.snd := by
- rw [mul_coeff]
- apply sum_subset_zero_on_sdiff (addAntidiagonal_mono_left hxs) _ fun _ _ => rfl
- intro b hb
- simp only [not_and', mem_sdiff, mem_addAntidiagonal, mem_support, not_ne_iff] at hb
- rw [hb.2 ⟨hb.1.2.1, hb.1.2.2⟩, zero_mul]
+ ∑ ij in addAntidiagonal hs y.isPWO_support a, x.coeff ij.fst * y.coeff ij.snd :=
+ HahnModule.smul_coeff_left hs hxs
#align hahn_series.mul_coeff_left' HahnSeries.mul_coeff_left'
instance [NonUnitalNonAssocSemiring R] : Distrib (HahnSeries Γ R) :=
@@ -1081,8 +1166,12 @@ end Domain
end Algebra
+end HahnSeries
+
end Multiplication
+namespace HahnSeries
+
section Semiring
variable [Semiring R]
Given a Hahn series x
and a scalar r
such that r • x ≠ 0
, the order of r • x
is not strictly less than the order of x
. If the exponent poset is linearly ordered, the order of x
is less than or equal to the order of r • x
. (Note that the order of a Hahn series is not uniquely defined when the exponent poset is not linearly ordered.) This is a complement to the addition result HahnSeries.min_order_le_order_add
.
@@ -512,6 +512,15 @@ instance : DistribMulAction R (HahnSeries Γ V) where
ext
simp [mul_smul]
+theorem order_smul_not_lt [Zero Γ] (r : R) (x : HahnSeries Γ V) (h : r • x ≠ 0) :
+ ¬ (r • x).order < x.order := by
+ have hx : x ≠ 0 := right_ne_zero_of_smul h
+ simp_all only [order, dite_false]
+ exact Set.IsWF.min_of_subset_not_lt_min (Function.support_smul_subset_right (fun _ => r) x.coeff)
+
+theorem le_order_smul {Γ} [Zero Γ] [LinearOrder Γ] (r : R) (x : HahnSeries Γ V) (h : r • x ≠ 0) :
+ x.order ≤ (r • x).order := le_of_not_lt (order_smul_not_lt r x h)
+
variable {S : Type*} [Monoid S] [DistribMulAction S V]
instance [SMul R S] [IsScalarTower R S V] : IsScalarTower R S (HahnSeries Γ V) :=
Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Joachim Breitner <mail@joachim-breitner.de>
@@ -389,7 +389,7 @@ theorem min_order_le_order_add {Γ} [Zero Γ] [LinearOrder Γ] {x y : HahnSeries
#align hahn_series.min_order_le_order_add HahnSeries.min_order_le_order_add
/-- `single` as an additive monoid/group homomorphism -/
-@[simps]
+@[simps!]
def single.addMonoidHom (a : Γ) : R →+ HahnSeries Γ R :=
{ single a with
map_add' := fun x y => by
@@ -490,7 +490,7 @@ variable [PartialOrder Γ] {V : Type*} [Monoid R] [AddMonoid V] [DistribMulActio
instance : SMul R (HahnSeries Γ V) :=
⟨fun r x =>
{ coeff := r • x.coeff
- isPWO_support' := x.isPWO_support.mono (Function.support_smul_subset_right r x.coeff) }⟩
+ isPWO_support' := x.isPWO_support.mono (Function.support_const_smul_subset r x.coeff) }⟩
@[simp]
theorem smul_coeff {r : R} {x : HahnSeries Γ V} {a : Γ} : (r • x).coeff a = r • x.coeff a :=
The theorem as stated assumes LinearOrderedCancelAddCommMonoid Γ
but the results used in the proof only need Zero Γ
LinearOrder Γ
@@ -379,7 +379,7 @@ theorem support_add_subset {x y : HahnSeries Γ R} : support (x + y) ⊆ support
rw [ha.1, ha.2, add_zero]
#align hahn_series.support_add_subset HahnSeries.support_add_subset
-theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y : HahnSeries Γ R}
+theorem min_order_le_order_add {Γ} [Zero Γ] [LinearOrder Γ] {x y : HahnSeries Γ R}
(hxy : x + y ≠ 0) : min x.order y.order ≤ (x + y).order := by
by_cases hx : x = 0; · simp [hx]
by_cases hy : y = 0; · simp [hy]
FunLike
(#9833)
This follows up from #9785, which renamed FunLike
to DFunLike
, by introducing a new abbreviation FunLike F α β := DFunLike F α (fun _ => β)
, to make the non-dependent use of FunLike
easier.
I searched for the pattern DFunLike.*fun
and DFunLike.*λ
in all files to replace expressions of the form DFunLike F α (fun _ => β)
with FunLike F α β
. I did this everywhere except for extends
clauses for two reasons: it would conflict with #8386, and more importantly extends
must directly refer to a structure with no unfolding of def
s or abbrev
s.
@@ -1367,7 +1367,7 @@ section AddCommMonoid
variable [PartialOrder Γ] [AddCommMonoid R] {α : Type*}
-instance : DFunLike (SummableFamily Γ R α) α fun _ => HahnSeries Γ R where
+instance : FunLike (SummableFamily Γ R α) α (HahnSeries Γ R) where
coe := toFun
coe_injective' | ⟨_, _, _⟩, ⟨_, _, _⟩, rfl => rfl
FunLike
to DFunLike
(#9785)
This prepares for the introduction of a non-dependent synonym of FunLike, which helps a lot with keeping #8386 readable.
This is entirely search-and-replace in 680197f combined with manual fixes in 4145626, e900597 and b8428f8. The commands that generated this change:
sed -i 's/\bFunLike\b/DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoFunLike\b/toDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/import Mathlib.Data.DFunLike/import Mathlib.Data.FunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bHom_FunLike\b/Hom_DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\binstFunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bfunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoo many metavariables to apply `fun_like.has_coe_to_fun`/too many metavariables to apply `DFunLike.hasCoeToFun`/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
@@ -1367,7 +1367,7 @@ section AddCommMonoid
variable [PartialOrder Γ] [AddCommMonoid R] {α : Type*}
-instance : FunLike (SummableFamily Γ R α) α fun _ => HahnSeries Γ R where
+instance : DFunLike (SummableFamily Γ R α) α fun _ => HahnSeries Γ R where
coe := toFun
coe_injective' | ⟨_, _, _⟩, ⟨_, _, _⟩, rfl => rfl
@@ -1381,12 +1381,12 @@ theorem finite_co_support (s : SummableFamily Γ R α) (g : Γ) :
#align hahn_series.summable_family.finite_co_support HahnSeries.SummableFamily.finite_co_support
theorem coe_injective : @Function.Injective (SummableFamily Γ R α) (α → HahnSeries Γ R) (⇑) :=
- FunLike.coe_injective
+ DFunLike.coe_injective
#align hahn_series.summable_family.coe_injective HahnSeries.SummableFamily.coe_injective
@[ext]
theorem ext {s t : SummableFamily Γ R α} (h : ∀ a : α, s a = t a) : s = t :=
- FunLike.ext s t h
+ DFunLike.ext s t h
#align hahn_series.summable_family.ext HahnSeries.SummableFamily.ext
instance : Add (SummableFamily Γ R α) :=
Rename Set.IsPwo
→ Set.IsPWO
and Set.IsWf
→ Set.IsWF
.
@@ -7,7 +7,7 @@ import Mathlib.Order.WellFoundedSet
import Mathlib.Algebra.BigOperators.Finprod
import Mathlib.RingTheory.Valuation.Basic
import Mathlib.RingTheory.PowerSeries.Basic
-import Mathlib.Data.Finsupp.Pwo
+import Mathlib.Data.Finsupp.PWO
import Mathlib.Data.Finset.MulAntidiagonal
import Mathlib.Algebra.Order.Group.WithTop
@@ -63,7 +63,7 @@ noncomputable section
@[ext]
structure HahnSeries (Γ : Type*) (R : Type*) [PartialOrder Γ] [Zero R] where
coeff : Γ → R
- isPwo_support' : (Function.support coeff).IsPwo
+ isPWO_support' : (Function.support coeff).IsPWO
#align hahn_series HahnSeries
variable {Γ : Type*} {R : Type*}
@@ -90,14 +90,14 @@ nonrec def support (x : HahnSeries Γ R) : Set Γ :=
#align hahn_series.support HahnSeries.support
@[simp]
-theorem isPwo_support (x : HahnSeries Γ R) : x.support.IsPwo :=
- x.isPwo_support'
-#align hahn_series.is_pwo_support HahnSeries.isPwo_support
+theorem isPWO_support (x : HahnSeries Γ R) : x.support.IsPWO :=
+ x.isPWO_support'
+#align hahn_series.is_pwo_support HahnSeries.isPWO_support
@[simp]
-theorem isWf_support (x : HahnSeries Γ R) : x.support.IsWf :=
- x.isPwo_support.isWf
-#align hahn_series.is_wf_support HahnSeries.isWf_support
+theorem isWF_support (x : HahnSeries Γ R) : x.support.IsWF :=
+ x.isPWO_support.isWF
+#align hahn_series.is_wf_support HahnSeries.isWF_support
@[simp]
theorem mem_support (x : HahnSeries Γ R) (a : Γ) : a ∈ x.support ↔ x.coeff a ≠ 0 :=
@@ -106,7 +106,7 @@ theorem mem_support (x : HahnSeries Γ R) (a : Γ) : a ∈ x.support ↔ x.coeff
instance : Zero (HahnSeries Γ R) :=
⟨{ coeff := 0
- isPwo_support' := by simp }⟩
+ isPWO_support' := by simp }⟩
instance : Inhabited (HahnSeries Γ R) :=
⟨0⟩
@@ -147,7 +147,7 @@ theorem support_eq_empty_iff {x : HahnSeries Γ R} : x.support = ∅ ↔ x = 0 :
def single (a : Γ) : ZeroHom R (HahnSeries Γ R) where
toFun r :=
{ coeff := Pi.single a r
- isPwo_support' := (Set.isPwo_singleton a).mono Pi.support_single_subset }
+ isPWO_support' := (Set.isPWO_singleton a).mono Pi.support_single_subset }
map_zero' := HahnSeries.ext _ _ (Pi.single_zero _)
#align hahn_series.single HahnSeries.single
@@ -212,7 +212,7 @@ variable [Zero Γ]
/-- The order of a nonzero Hahn series `x` is a minimal element of `Γ` where `x` has a
nonzero coefficient, the order of 0 is 0. -/
def order (x : HahnSeries Γ R) : Γ :=
- if h : x = 0 then 0 else x.isWf_support.min (support_nonempty_iff.2 h)
+ if h : x = 0 then 0 else x.isWF_support.min (support_nonempty_iff.2 h)
#align hahn_series.order HahnSeries.order
@[simp]
@@ -221,26 +221,26 @@ theorem order_zero : order (0 : HahnSeries Γ R) = 0 :=
#align hahn_series.order_zero HahnSeries.order_zero
theorem order_of_ne {x : HahnSeries Γ R} (hx : x ≠ 0) :
- order x = x.isWf_support.min (support_nonempty_iff.2 hx) :=
+ order x = x.isWF_support.min (support_nonempty_iff.2 hx) :=
dif_neg hx
#align hahn_series.order_of_ne HahnSeries.order_of_ne
theorem coeff_order_ne_zero {x : HahnSeries Γ R} (hx : x ≠ 0) : x.coeff x.order ≠ 0 := by
rw [order_of_ne hx]
- exact x.isWf_support.min_mem (support_nonempty_iff.2 hx)
+ exact x.isWF_support.min_mem (support_nonempty_iff.2 hx)
#align hahn_series.coeff_order_ne_zero HahnSeries.coeff_order_ne_zero
theorem order_le_of_coeff_ne_zero {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x : HahnSeries Γ R}
{g : Γ} (h : x.coeff g ≠ 0) : x.order ≤ g :=
le_trans (le_of_eq (order_of_ne (ne_zero_of_coeff_ne_zero h)))
- (Set.IsWf.min_le _ _ ((mem_support _ _).2 h))
+ (Set.IsWF.min_le _ _ ((mem_support _ _).2 h))
#align hahn_series.order_le_of_coeff_ne_zero HahnSeries.order_le_of_coeff_ne_zero
@[simp]
theorem order_single (h : r ≠ 0) : (single a r).order = a :=
(order_of_ne (single_ne_zero h)).trans
(support_single_subset
- ((single a r).isWf_support.min_mem (support_nonempty_iff.2 (single_ne_zero h))))
+ ((single a r).isWF_support.min_mem (support_nonempty_iff.2 (single_ne_zero h))))
#align hahn_series.order_single HahnSeries.order_single
theorem coeff_eq_zero_of_lt_order {x : HahnSeries Γ R} {i : Γ} (hi : i < x.order) :
@@ -250,7 +250,7 @@ theorem coeff_eq_zero_of_lt_order {x : HahnSeries Γ R} {i : Γ} (hi : i < x.ord
contrapose! hi
rw [← mem_support] at hi
rw [order_of_ne hx]
- exact Set.IsWf.not_lt_min _ _ hi
+ exact Set.IsWF.not_lt_min _ _ hi
#align hahn_series.coeff_eq_zero_of_lt_order HahnSeries.coeff_eq_zero_of_lt_order
end Order
@@ -262,8 +262,8 @@ variable {Γ' : Type*} [PartialOrder Γ']
/-- Extends the domain of a `HahnSeries` by an `OrderEmbedding`. -/
def embDomain (f : Γ ↪o Γ') : HahnSeries Γ R → HahnSeries Γ' R := fun x =>
{ coeff := fun b : Γ' => if h : b ∈ f '' x.support then x.coeff (Classical.choose h) else 0
- isPwo_support' :=
- (x.isPwo_support.image_of_monotone f.monotone).mono fun b hb => by
+ isPWO_support' :=
+ (x.isPWO_support.image_of_monotone f.monotone).mono fun b hb => by
contrapose! hb
rw [Function.mem_support, dif_neg hb, Classical.not_not] }
#align hahn_series.emb_domain HahnSeries.embDomain
@@ -347,7 +347,7 @@ variable [AddMonoid R]
instance : Add (HahnSeries Γ R) where
add x y :=
{ coeff := x.coeff + y.coeff
- isPwo_support' := (x.isPwo_support.union y.isPwo_support).mono (Function.support_add _ _) }
+ isPWO_support' := (x.isPWO_support.union y.isPWO_support).mono (Function.support_add _ _) }
instance : AddMonoid (HahnSeries Γ R) where
zero := 0
@@ -384,8 +384,8 @@ theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y :
by_cases hx : x = 0; · simp [hx]
by_cases hy : y = 0; · simp [hy]
rw [order_of_ne hx, order_of_ne hy, order_of_ne hxy]
- refine' le_of_eq_of_le _ (Set.IsWf.min_le_min_of_subset (support_add_subset (x := x) (y := y)))
- exact (Set.IsWf.min_union _ _ _ _).symm
+ refine' le_of_eq_of_le _ (Set.IsWF.min_le_min_of_subset (support_add_subset (x := x) (y := y)))
+ exact (Set.IsWF.min_union _ _ _ _).symm
#align hahn_series.min_order_le_order_add HahnSeries.min_order_le_order_add
/-- `single` as an additive monoid/group homomorphism -/
@@ -436,9 +436,9 @@ instance : AddGroup (HahnSeries Γ R) :=
{ inferInstanceAs (AddMonoid (HahnSeries Γ R)) with
neg := fun x =>
{ coeff := fun a => -x.coeff a
- isPwo_support' := by
+ isPWO_support' := by
rw [Function.support_neg]
- exact x.isPwo_support }
+ exact x.isPWO_support }
add_left_neg := fun x => by
ext
apply add_left_neg }
@@ -490,7 +490,7 @@ variable [PartialOrder Γ] {V : Type*} [Monoid R] [AddMonoid V] [DistribMulActio
instance : SMul R (HahnSeries Γ V) :=
⟨fun r x =>
{ coeff := r • x.coeff
- isPwo_support' := x.isPwo_support.mono (Function.support_smul_subset_right r x.coeff) }⟩
+ isPWO_support' := x.isPWO_support.mono (Function.support_smul_subset_right r x.coeff) }⟩
@[simp]
theorem smul_coeff {r : R} {x : HahnSeries Γ V} {a : Γ} : (r • x).coeff a = r • x.coeff a :=
@@ -612,31 +612,31 @@ theorem order_one [MulZeroOneClass R] : order (1 : HahnSeries Γ R) = 0 := by
instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R) where
mul x y :=
{ coeff := fun a =>
- ∑ ij in addAntidiagonal x.isPwo_support y.isPwo_support a, x.coeff ij.fst * y.coeff ij.snd
- isPwo_support' :=
+ ∑ ij in addAntidiagonal x.isPWO_support y.isPWO_support a, x.coeff ij.fst * y.coeff ij.snd
+ isPWO_support' :=
haveI h :
{ a : Γ |
- (∑ ij : Γ × Γ in addAntidiagonal x.isPwo_support y.isPwo_support a,
+ (∑ ij : Γ × Γ in addAntidiagonal x.isPWO_support y.isPWO_support a,
x.coeff ij.fst * y.coeff ij.snd) ≠
0 } ⊆
- { a : Γ | (addAntidiagonal x.isPwo_support y.isPwo_support a).Nonempty } := by
+ { a : Γ | (addAntidiagonal x.isPWO_support y.isPWO_support a).Nonempty } := by
intro a ha
contrapose! ha
simp [not_nonempty_iff_eq_empty.1 ha]
- isPwo_support_addAntidiagonal.mono h }
+ isPWO_support_addAntidiagonal.mono h }
/-@[simp] Porting note: removing simp. RHS is more complicated and it makes linter
failures elsewhere-/
theorem mul_coeff [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} :
(x * y).coeff a =
- ∑ ij in addAntidiagonal x.isPwo_support y.isPwo_support a, x.coeff ij.fst * y.coeff ij.snd :=
+ ∑ ij in addAntidiagonal x.isPWO_support y.isPWO_support a, x.coeff ij.fst * y.coeff ij.snd :=
rfl
#align hahn_series.mul_coeff HahnSeries.mul_coeff
theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
- (hs : s.IsPwo) (hys : y.support ⊆ s) :
+ (hs : s.IsPWO) (hys : y.support ⊆ s) :
(x * y).coeff a =
- ∑ ij in addAntidiagonal x.isPwo_support hs a, x.coeff ij.fst * y.coeff ij.snd := by
+ ∑ ij in addAntidiagonal x.isPWO_support hs a, x.coeff ij.fst * y.coeff ij.snd := by
rw [mul_coeff]
apply sum_subset_zero_on_sdiff (addAntidiagonal_mono_right hys) _ fun _ _ => rfl
intro b hb
@@ -645,9 +645,9 @@ theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {
#align hahn_series.mul_coeff_right' HahnSeries.mul_coeff_right'
theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
- (hs : s.IsPwo) (hxs : x.support ⊆ s) :
+ (hs : s.IsPWO) (hxs : x.support ⊆ s) :
(x * y).coeff a =
- ∑ ij in addAntidiagonal hs y.isPwo_support a, x.coeff ij.fst * y.coeff ij.snd := by
+ ∑ ij in addAntidiagonal hs y.isPWO_support a, x.coeff ij.fst * y.coeff ij.snd := by
rw [mul_coeff]
apply sum_subset_zero_on_sdiff (addAntidiagonal_mono_left hxs) _ fun _ _ => rfl
intro b hb
@@ -660,7 +660,7 @@ instance [NonUnitalNonAssocSemiring R] : Distrib (HahnSeries Γ R) :=
inferInstanceAs (Add (HahnSeries Γ R)) with
left_distrib := fun x y z => by
ext a
- have hwf := y.isPwo_support.union z.isPwo_support
+ have hwf := y.isPWO_support.union z.isPWO_support
rw [mul_coeff_right' hwf, add_coeff, mul_coeff_right' hwf (Set.subset_union_right _ _),
mul_coeff_right' hwf (Set.subset_union_left _ _)]
· simp only [add_coeff, mul_add, sum_add_distrib]
@@ -671,7 +671,7 @@ instance [NonUnitalNonAssocSemiring R] : Distrib (HahnSeries Γ R) :=
rw [h.1, h.2, add_zero]
right_distrib := fun x y z => by
ext a
- have hwf := x.isPwo_support.union y.isPwo_support
+ have hwf := x.isPWO_support.union y.isPWO_support
rw [mul_coeff_left' hwf, add_coeff, mul_coeff_left' hwf (Set.subset_union_right _ _),
mul_coeff_left' hwf (Set.subset_union_left _ _)]
· simp only [add_coeff, add_mul, sum_add_distrib]
@@ -757,8 +757,8 @@ theorem single_zero_mul_eq_smul [Semiring R] {r : R} {x : HahnSeries Γ R} :
theorem support_mul_subset_add_support [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} :
support (x * y) ⊆ support x + support y := by
apply Set.Subset.trans (fun x hx => _) support_addAntidiagonal_subset_add
- · exact x.isPwo_support
- · exact y.isPwo_support
+ · exact x.isPWO_support
+ · exact y.isPWO_support
intro x hx
contrapose! hx
simp only [not_nonempty_iff_eq_empty, Ne.def, Set.mem_setOf_eq] at hx
@@ -777,8 +777,8 @@ theorem mul_coeff_order_add_order {Γ} [LinearOrderedCancelAddCommMonoid Γ]
private theorem mul_assoc' [NonUnitalSemiring R] (x y z : HahnSeries Γ R) :
x * y * z = x * (y * z) := by
ext b
- rw [mul_coeff_left' (x.isPwo_support.add y.isPwo_support) support_mul_subset_add_support,
- mul_coeff_right' (y.isPwo_support.add z.isPwo_support) support_mul_subset_add_support]
+ rw [mul_coeff_left' (x.isPWO_support.add y.isPWO_support) support_mul_subset_add_support,
+ mul_coeff_right' (y.isPWO_support.add z.isPWO_support) support_mul_subset_add_support]
simp only [mul_coeff, add_coeff, sum_mul, mul_sum, sum_sigma']
apply Finset.sum_nbij' (fun ⟨⟨_i, j⟩, ⟨k, l⟩⟩ ↦ ⟨(k, l + j), (l, j)⟩)
(fun ⟨⟨i, _j⟩, ⟨k, l⟩⟩ ↦ ⟨(i + k, l), (i, k)⟩) <;>
@@ -868,8 +868,8 @@ theorem order_mul {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocS
· apply order_le_of_coeff_ne_zero
rw [mul_coeff_order_add_order x y]
exact mul_ne_zero (coeff_order_ne_zero hx) (coeff_order_ne_zero hy)
- · rw [order_of_ne hx, order_of_ne hy, order_of_ne (mul_ne_zero hx hy), ← Set.IsWf.min_add]
- exact Set.IsWf.min_le_min_of_subset support_mul_subset_add_support
+ · rw [order_of_ne hx, order_of_ne hy, order_of_ne (mul_ne_zero hx hy), ← Set.IsWF.min_add]
+ exact Set.IsWF.min_le_min_of_subset support_mul_subset_add_support
#align hahn_series.order_mul HahnSeries.order_mul
@[simp]
@@ -972,7 +972,7 @@ theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
simp only [mul_coeff, embDomain_coeff]
trans
∑ ij in
- (addAntidiagonal x.isPwo_support y.isPwo_support g).map
+ (addAntidiagonal x.isPWO_support y.isPWO_support g).map
(Function.Embedding.prodMap f.toEmbedding f.toEmbedding),
(embDomain f x).coeff ij.1 * (embDomain f y).coeff ij.2
· simp
@@ -1082,7 +1082,7 @@ variable [Semiring R]
@[simps]
def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R where
toFun f := PowerSeries.mk f.coeff
- invFun f := ⟨fun n => PowerSeries.coeff R n f, (Nat.lt_wfRel.wf.isWf _).isPwo⟩
+ invFun f := ⟨fun n => PowerSeries.coeff R n f, (Nat.lt_wfRel.wf.isWF _).isPWO⟩
left_inv f := by
ext
simp
@@ -1094,7 +1094,7 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R where
simp
map_mul' f g := by
ext n
- simp only [PowerSeries.coeff_mul, PowerSeries.coeff_mk, mul_coeff, isPwo_support]
+ simp only [PowerSeries.coeff_mul, PowerSeries.coeff_mk, mul_coeff, isPWO_support]
classical
refine (sum_filter_ne_zero _).symm.trans <| (sum_congr ?_ fun _ _ ↦ rfl).trans <|
sum_filter_ne_zero _
@@ -1195,7 +1195,7 @@ After importing `Algebra.Order.Pi` the ring `HahnSeries (σ → ℕ) R` could be
@[simps]
def toMvPowerSeries {σ : Type*} [Fintype σ] : HahnSeries (σ →₀ ℕ) R ≃+* MvPowerSeries σ R where
toFun f := f.coeff
- invFun f := ⟨(f : (σ →₀ ℕ) → R), Finsupp.isPwo _⟩
+ invFun f := ⟨(f : (σ →₀ ℕ) → R), Finsupp.isPWO _⟩
left_inv f := by
ext
simp
@@ -1298,7 +1298,7 @@ def addVal : AddValuation (HahnSeries Γ R) (WithTop Γ) :=
· by_cases hy : y = 0 <;> · simp [hx, hy]
· by_cases hy : y = 0
· simp [hx, hy]
- · simp only [hx, hy, support_nonempty_iff, if_neg, not_false_iff, isWf_support]
+ · simp only [hx, hy, support_nonempty_iff, if_neg, not_false_iff, isWF_support]
by_cases hxy : x + y = 0
· simp [hxy]
rw [if_neg hxy, ← WithTop.coe_min, WithTop.coe_le_coe]
@@ -1333,9 +1333,9 @@ theorem addVal_le_of_coeff_ne_zero {x : HahnSeries Γ R} {g : Γ} (h : x.coeff g
end Valuation
-theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
- {x : HahnSeries Γ R} (hx : 0 < addVal Γ R x) : (⋃ n : ℕ, (x ^ n).support).IsPwo := by
- apply (x.isWf_support.isPwo.addSubmonoid_closure _).mono _
+theorem isPWO_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R]
+ {x : HahnSeries Γ R} (hx : 0 < addVal Γ R x) : (⋃ n : ℕ, (x ^ n).support).IsPWO := by
+ apply (x.isWF_support.isPWO.addSubmonoid_closure _).mono _
· exact fun g hg => WithTop.coe_le_coe.1 (le_trans (le_of_lt hx) (addVal_le_of_coeff_ne_zero hg))
refine' Set.iUnion_subset fun n => _
induction' n with n ih <;> intro g hn
@@ -1344,7 +1344,7 @@ theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring
exact AddSubmonoid.zero_mem _
· obtain ⟨i, hi, j, hj, rfl⟩ := support_mul_subset_add_support hn
exact SetLike.mem_coe.2 (AddSubmonoid.add_mem _ (AddSubmonoid.subset_closure hi) (ih hj))
-#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPwo_iUnion_support_powers
+#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPWO_iUnion_support_powers
section
@@ -1355,7 +1355,7 @@ variable (Γ) (R) [PartialOrder Γ] [AddCommMonoid R]
and that only finitely many series are nonzero at any given coefficient. -/
structure SummableFamily (α : Type*) where
toFun : α → HahnSeries Γ R
- isPwo_iUnion_support' : Set.IsPwo (⋃ a : α, (toFun a).support)
+ isPWO_iUnion_support' : Set.IsPWO (⋃ a : α, (toFun a).support)
finite_co_support' : ∀ g : Γ, { a | (toFun a).coeff g ≠ 0 }.Finite
#align hahn_series.summable_family HahnSeries.SummableFamily
@@ -1371,9 +1371,9 @@ instance : FunLike (SummableFamily Γ R α) α fun _ => HahnSeries Γ R where
coe := toFun
coe_injective' | ⟨_, _, _⟩, ⟨_, _, _⟩, rfl => rfl
-theorem isPwo_iUnion_support (s : SummableFamily Γ R α) : Set.IsPwo (⋃ a : α, (s a).support) :=
- s.isPwo_iUnion_support'
-#align hahn_series.summable_family.is_pwo_Union_support HahnSeries.SummableFamily.isPwo_iUnion_support
+theorem isPWO_iUnion_support (s : SummableFamily Γ R α) : Set.IsPWO (⋃ a : α, (s a).support) :=
+ s.isPWO_iUnion_support'
+#align hahn_series.summable_family.is_pwo_Union_support HahnSeries.SummableFamily.isPWO_iUnion_support
theorem finite_co_support (s : SummableFamily Γ R α) (g : Γ) :
(Function.support fun a => (s a).coeff g).Finite :=
@@ -1392,8 +1392,8 @@ theorem ext {s t : SummableFamily Γ R α} (h : ∀ a : α, s a = t a) : s = t :
instance : Add (SummableFamily Γ R α) :=
⟨fun x y =>
{ toFun := x + y
- isPwo_iUnion_support' :=
- (x.isPwo_iUnion_support.union y.isPwo_iUnion_support).mono
+ isPWO_iUnion_support' :=
+ (x.isPWO_iUnion_support.union y.isPWO_iUnion_support).mono
(by
rw [← Set.iUnion_union_distrib]
exact Set.iUnion_mono fun a => support_add_subset)
@@ -1449,8 +1449,8 @@ instance : AddCommMonoid (SummableFamily Γ R α) where
/-- The infinite sum of a `SummableFamily` of Hahn series. -/
def hsum (s : SummableFamily Γ R α) : HahnSeries Γ R where
coeff g := ∑ᶠ i, (s i).coeff g
- isPwo_support' :=
- s.isPwo_iUnion_support.mono fun g => by
+ isPWO_support' :=
+ s.isPWO_iUnion_support.mono fun g => by
contrapose
rw [Set.mem_iUnion, not_exists, Function.mem_support, Classical.not_not]
simp_rw [mem_support, Classical.not_not]
@@ -1488,9 +1488,9 @@ instance : AddCommGroup (SummableFamily Γ R α) :=
{ inferInstanceAs (AddCommMonoid (SummableFamily Γ R α)) with
neg := fun s =>
{ toFun := fun a => -s a
- isPwo_iUnion_support' := by
+ isPWO_iUnion_support' := by
simp_rw [support_neg]
- exact s.isPwo_iUnion_support'
+ exact s.isPWO_iUnion_support'
finite_co_support' := fun g => by
simp only [neg_coeff', Pi.neg_apply, Ne.def, neg_eq_zero]
exact s.finite_co_support g }
@@ -1525,22 +1525,22 @@ variable [OrderedCancelAddCommMonoid Γ] [Semiring R] {α : Type*}
instance : SMul (HahnSeries Γ R) (SummableFamily Γ R α) where
smul x s :=
{ toFun := fun a => x * s a
- isPwo_iUnion_support' := by
- apply (x.isPwo_support.add s.isPwo_iUnion_support).mono
+ isPWO_iUnion_support' := by
+ apply (x.isPWO_support.add s.isPWO_iUnion_support).mono
refine' Set.Subset.trans (Set.iUnion_mono fun a => support_mul_subset_add_support) _
intro g
simp only [Set.mem_iUnion, exists_imp]
exact fun a ha => (Set.add_subset_add (Set.Subset.refl _) (Set.subset_iUnion _ a)) ha
finite_co_support' := fun g => by
refine'
- ((addAntidiagonal x.isPwo_support s.isPwo_iUnion_support g).finite_toSet.biUnion'
+ ((addAntidiagonal x.isPWO_support s.isPWO_iUnion_support g).finite_toSet.biUnion'
fun ij _ => _).subset
fun a ha => _
· exact fun ij _ => Function.support fun a => (s a).coeff ij.2
· apply s.finite_co_support
· obtain ⟨i, hi, j, hj, rfl⟩ := support_mul_subset_add_support ha
simp only [exists_prop, Set.mem_iUnion, mem_addAntidiagonal, mul_coeff, mem_support,
- isPwo_support, Prod.exists]
+ isPWO_support, Prod.exists]
exact ⟨i, j, mem_coe.2 (mem_addAntidiagonal.2 ⟨hi, Set.mem_iUnion.2 ⟨a, hj⟩, rfl⟩), hj⟩ }
@[simp]
@@ -1563,7 +1563,7 @@ theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s)
simp only [mul_coeff, hsum_coeff, smul_apply]
refine'
(Eq.trans (finsum_congr fun a => _)
- (finsum_sum_comm (addAntidiagonal x.isPwo_support s.isPwo_iUnion_support g)
+ (finsum_sum_comm (addAntidiagonal x.isPWO_support s.isPWO_iUnion_support g)
(fun i ij => x.coeff (Prod.fst ij) * (s i).coeff ij.snd) _)).trans
_
· refine' sum_subset (addAntidiagonal_mono_right
@@ -1613,8 +1613,8 @@ variable [PartialOrder Γ] [AddCommMonoid R] {α : Type*}
/-- A family with only finitely many nonzero elements is summable. -/
def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α where
toFun := f
- isPwo_iUnion_support' := by
- apply (f.support.isPwo_bUnion.2 fun a _ => (f a).isPwo_support).mono
+ isPWO_iUnion_support' := by
+ apply (f.support.isPWO_bUnion.2 fun a _ => (f a).isPWO_support).mono
refine' Set.iUnion_subset_iff.2 fun a g hg => _
have haf : a ∈ f.support := by
rw [Finsupp.mem_support_iff, ← support_nonempty_iff]
@@ -1654,8 +1654,8 @@ variable [PartialOrder Γ] [AddCommMonoid R] {α β : Type*}
/-- A summable family can be reindexed by an embedding without changing its sum. -/
def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R β where
toFun b := if h : b ∈ Set.range f then s (Classical.choose h) else 0
- isPwo_iUnion_support' := by
- refine' s.isPwo_iUnion_support.mono (Set.iUnion_subset fun b g h => _)
+ isPWO_iUnion_support' := by
+ refine' s.isPWO_iUnion_support.mono (Set.iUnion_subset fun b g h => _)
by_cases hb : b ∈ Set.range f
· dsimp only at h
rw [dif_pos hb] at h
@@ -1708,15 +1708,15 @@ variable [LinearOrderedCancelAddCommMonoid Γ] [CommRing R] [IsDomain R]
/-- The powers of an element of positive valuation form a summable family. -/
def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R ℕ where
toFun n := x ^ n
- isPwo_iUnion_support' := isPwo_iUnion_support_powers hx
+ isPWO_iUnion_support' := isPWO_iUnion_support_powers hx
finite_co_support' g := by
- have hpwo := isPwo_iUnion_support_powers hx
+ have hpwo := isPWO_iUnion_support_powers hx
by_cases hg : g ∈ ⋃ n : ℕ, { g | (x ^ n).coeff g ≠ 0 }
swap; · exact Set.finite_empty.subset fun n hn => hg (Set.mem_iUnion.2 ⟨n, hn⟩)
- apply hpwo.isWf.induction hg
+ apply hpwo.isWF.induction hg
intro y ys hy
refine'
- ((((addAntidiagonal x.isPwo_support hpwo y).finite_toSet.biUnion fun ij hij =>
+ ((((addAntidiagonal x.isPWO_support hpwo y).finite_toSet.biUnion fun ij hij =>
hy ij.snd _ _).image
Nat.succ).union
(Set.finite_singleton 0)).subset
$
with <|
(#9319)
See Zulip thread for the discussion.
@@ -817,7 +817,7 @@ instance [NonUnitalCommSemiring R] : NonUnitalCommSemiring (HahnSeries Γ R) whe
mul_comm x y := by
ext
simp_rw [mul_coeff, mul_comm]
- exact Finset.sum_equiv (Equiv.prodComm _ _) (fun _ ↦ swap_mem_addAntidiagonal.symm) $ by simp
+ exact Finset.sum_equiv (Equiv.prodComm _ _) (fun _ ↦ swap_mem_addAntidiagonal.symm) <| by simp
instance [CommSemiring R] : CommSemiring (HahnSeries Γ R) :=
{ inferInstanceAs (NonUnitalCommSemiring (HahnSeries Γ R)),
@@ -1096,7 +1096,7 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R where
ext n
simp only [PowerSeries.coeff_mul, PowerSeries.coeff_mk, mul_coeff, isPwo_support]
classical
- refine (sum_filter_ne_zero _).symm.trans $ (sum_congr ?_ fun _ _ ↦ rfl).trans $
+ refine (sum_filter_ne_zero _).symm.trans <| (sum_congr ?_ fun _ _ ↦ rfl).trans <|
sum_filter_ne_zero _
ext m
simp only [mem_antidiagonal, mem_addAntidiagonal, and_congr_left_iff, mem_filter,
@@ -1211,7 +1211,7 @@ def toMvPowerSeries {σ : Type*} [Fintype σ] : HahnSeries (σ →₀ ℕ) R ≃
classical
change (f * g).coeff n = _
simp_rw [mul_coeff]
- refine' (sum_filter_ne_zero _).symm.trans $ (sum_congr _ fun _ _ ↦ rfl).trans $
+ refine' (sum_filter_ne_zero _).symm.trans <| (sum_congr _ fun _ _ ↦ rfl).trans <|
sum_filter_ne_zero _
ext m
simp only [and_congr_left_iff, mem_addAntidiagonal, mem_filter, mem_support,
Set.image2
etc (#9275)
Set.image2
to use ∃ a ∈ s, ∃ b ∈ t, f a b = c
instead of ∃ a b, a ∈ s ∧ b ∈ t ∧ f a b = c
.Set.seq
as Set.image2
. The new definition is equal to the old one but rw [Set.seq]
gives a different result.Filter.map₂
to use ∃ u ∈ f, ∃ v ∈ g, image2 m u v ⊆ s
instead of ∃ u v, u ∈ f ∧ v ∈ g ∧ ...
Set.mem_image2
, Finset.mem_image₂
, Set.mem_mul
, Finset.mem_div
etcThe two reasons to make the change are:
∃ a ∈ s, ∃ b ∈ t, _
is a simp
-normal form, and@@ -993,7 +993,7 @@ theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
exact ⟨i, j, h1, rfl⟩
· rw [embDomain_notin_range hg, eq_comm]
contrapose! hg
- obtain ⟨_, _, hi, hj, rfl⟩ := support_mul_subset_add_support ((mem_support _ _).2 hg)
+ obtain ⟨_, hi, _, hj, rfl⟩ := support_mul_subset_add_support ((mem_support _ _).2 hg)
obtain ⟨i, _, rfl⟩ := support_embDomain_subset hi
obtain ⟨j, _, rfl⟩ := support_embDomain_subset hj
refine' ⟨i + j, hf i j⟩
@@ -1342,7 +1342,7 @@ theorem isPwo_iUnion_support_powers [LinearOrderedCancelAddCommMonoid Γ] [Ring
· simp only [Nat.zero_eq, pow_zero, support_one, Set.mem_singleton_iff] at hn
rw [hn, SetLike.mem_coe]
exact AddSubmonoid.zero_mem _
- · obtain ⟨i, j, hi, hj, rfl⟩ := support_mul_subset_add_support hn
+ · obtain ⟨i, hi, j, hj, rfl⟩ := support_mul_subset_add_support hn
exact SetLike.mem_coe.2 (AddSubmonoid.add_mem _ (AddSubmonoid.subset_closure hi) (ih hj))
#align hahn_series.is_pwo_Union_support_powers HahnSeries.isPwo_iUnion_support_powers
@@ -1538,7 +1538,7 @@ instance : SMul (HahnSeries Γ R) (SummableFamily Γ R α) where
fun a ha => _
· exact fun ij _ => Function.support fun a => (s a).coeff ij.2
· apply s.finite_co_support
- · obtain ⟨i, j, hi, hj, rfl⟩ := support_mul_subset_add_support ha
+ · obtain ⟨i, hi, j, hj, rfl⟩ := support_mul_subset_add_support ha
simp only [exists_prop, Set.mem_iUnion, mem_addAntidiagonal, mul_coeff, mem_support,
isPwo_support, Prod.exists]
exact ⟨i, j, mem_coe.2 (mem_addAntidiagonal.2 ⟨hi, Set.mem_iUnion.2 ⟨a, hj⟩, rfl⟩), hj⟩ }
@@ -1729,7 +1729,7 @@ def powers (x : HahnSeries Γ R) (hx : 0 < addVal Γ R x) : SummableFamily Γ R
_
· rintro (_ | n) hn
· exact Set.mem_union_right _ (Set.mem_singleton 0)
- · obtain ⟨i, j, hi, hj, rfl⟩ := support_mul_subset_add_support hn
+ · obtain ⟨i, hi, j, hj, rfl⟩ := support_mul_subset_add_support hn
refine' Set.mem_union_left _ ⟨n, Set.mem_iUnion.2 ⟨⟨i, j⟩, Set.mem_iUnion.2 ⟨_, hj⟩⟩, rfl⟩
simp only [and_true_iff, Set.mem_iUnion, mem_addAntidiagonal, mem_coe, eq_self_iff_true,
Ne.def, mem_support, Set.mem_setOf_eq]
Lemmas around this were a mess, throth in terms of names, statement and location. This PR standardises everything to be in Algebra.BigOperators.Basic
and changes the lemmas to take in InjOn
and SurjOn
assumptions where possible (and where impossible make sure the hypotheses are taken in the correct order) and moves the equality of functions hypothesis last.
Also add a few lemmas that help fix downstream uses by golfing.
From LeanAPAP and LeanCamCombi
@@ -780,27 +780,9 @@ private theorem mul_assoc' [NonUnitalSemiring R] (x y z : HahnSeries Γ R) :
rw [mul_coeff_left' (x.isPwo_support.add y.isPwo_support) support_mul_subset_add_support,
mul_coeff_right' (y.isPwo_support.add z.isPwo_support) support_mul_subset_add_support]
simp only [mul_coeff, add_coeff, sum_mul, mul_sum, sum_sigma']
- refine' sum_bij_ne_zero (fun a _ _ => ⟨⟨a.2.1, a.2.2 + a.1.2⟩, ⟨a.2.2, a.1.2⟩⟩) _ _ _ _
- · rintro ⟨⟨i, j⟩, ⟨k, l⟩⟩ H1 H2
- simp only [and_true_iff, Set.image2_add, eq_self_iff_true, mem_addAntidiagonal, Ne.def,
- Set.image_prod, mem_sigma, Set.mem_setOf_eq] at H1 H2 ⊢
- obtain ⟨⟨H3, nz, rfl⟩, nx, ny, rfl⟩ := H1
- exact ⟨⟨nx, Set.add_mem_add ny nz, (add_assoc _ _ _).symm⟩, ny, nz⟩
- · rintro ⟨⟨i1, j1⟩, k1, l1⟩ ⟨⟨i2, j2⟩, k2, l2⟩ H1 H2 H3 H4 H5
- simp only [Set.image2_add, Prod.mk.inj_iff, mem_addAntidiagonal, Ne.def, Set.image_prod,
- mem_sigma, Set.mem_setOf_eq, heq_iff_eq] at H1 H3 H5
- obtain (⟨⟨rfl, _⟩, rfl, rfl⟩ : (k1 = k2 ∧ l1 + j1 = l2 + j2) ∧ l1 = l2 ∧ j1 = j2) :=
- by simpa using H5
- simp only [and_true_iff, Prod.mk.inj_iff, eq_self_iff_true, heq_iff_eq, ← H1.2.2.2, ← H3.2.2.2]
- · rintro ⟨⟨i, j⟩, ⟨k, l⟩⟩ H1 H2
- simp only [exists_prop, Set.image2_add, Prod.mk.inj_iff, mem_addAntidiagonal, Sigma.exists,
- Ne.def, Set.image_prod, mem_sigma, Set.mem_setOf_eq, heq_iff_eq, Prod.exists] at H1 H2 ⊢
- obtain ⟨⟨nx, H, rfl⟩, ny, nz, rfl⟩ := H1
- exact
- ⟨i + k, l, i, k, ⟨⟨Set.add_mem_add nx ny, nz, add_assoc _ _ _⟩ , nx, ny, rfl⟩,
- fun h => H2 <| by rw [← h, mul_assoc], rfl⟩
- · rintro ⟨⟨i, j⟩, ⟨k, l⟩⟩ _ _
- simp [mul_assoc]
+ apply Finset.sum_nbij' (fun ⟨⟨_i, j⟩, ⟨k, l⟩⟩ ↦ ⟨(k, l + j), (l, j)⟩)
+ (fun ⟨⟨i, _j⟩, ⟨k, l⟩⟩ ↦ ⟨(i + k, l), (i, k)⟩) <;>
+ aesop (add safe Set.add_mem_add) (add simp [add_assoc, mul_assoc])
instance [NonUnitalNonAssocSemiring R] : NonUnitalNonAssocSemiring (HahnSeries Γ R) :=
{ inferInstanceAs (AddCommMonoid (HahnSeries Γ R)),
@@ -830,15 +812,12 @@ instance [Semiring R] : Semiring (HahnSeries Γ R) :=
{ inferInstanceAs (NonAssocSemiring (HahnSeries Γ R)),
inferInstanceAs (NonUnitalSemiring (HahnSeries Γ R)) with }
-instance [NonUnitalCommSemiring R] : NonUnitalCommSemiring (HahnSeries Γ R) :=
- { inferInstanceAs (NonUnitalSemiring (HahnSeries Γ R)) with
- mul_comm := fun x y => by
- ext
- simp_rw [mul_coeff, mul_comm]
- refine'
- sum_bij (fun a _ => a.swap) (fun a ha => _) (fun a _ => rfl)
- (fun _ _ _ _ => Prod.swap_inj.1) fun a ha => ⟨a.swap, _, a.swap_swap.symm⟩ <;>
- rwa [swap_mem_addAntidiagonal] }
+instance [NonUnitalCommSemiring R] : NonUnitalCommSemiring (HahnSeries Γ R) where
+ __ : NonUnitalSemiring (HahnSeries Γ R) := inferInstance
+ mul_comm x y := by
+ ext
+ simp_rw [mul_coeff, mul_comm]
+ exact Finset.sum_equiv (Equiv.prodComm _ _) (fun _ ↦ swap_mem_addAntidiagonal.symm) $ by simp
instance [CommSemiring R] : CommSemiring (HahnSeries Γ R) :=
{ inferInstanceAs (NonUnitalCommSemiring (HahnSeries Γ R)),
This PR corrects what appears to be a minor oversight.
We replace the scalar ring R
with the module V
in two spots.
The proofs are unchanged.
@@ -541,7 +541,7 @@ instance : Module R (HahnSeries Γ V) :=
/-- `single` as a linear map -/
@[simps]
-def single.linearMap (a : Γ) : R →ₗ[R] HahnSeries Γ R :=
+def single.linearMap (a : Γ) : V →ₗ[R] HahnSeries Γ V :=
{ single.addMonoidHom a with
map_smul' := fun r s => by
ext b
@@ -550,7 +550,7 @@ def single.linearMap (a : Γ) : R →ₗ[R] HahnSeries Γ R :=
/-- `coeff g` as a linear map -/
@[simps]
-def coeff.linearMap (g : Γ) : HahnSeries Γ R →ₗ[R] R :=
+def coeff.linearMap (g : Γ) : HahnSeries Γ V →ₗ[R] V :=
{ coeff.addMonoidHom g with map_smul' := fun _ _ => rfl }
#align hahn_series.coeff.linear_map HahnSeries.coeff.linearMap
@@ -1117,12 +1117,13 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R where
ext n
simp only [PowerSeries.coeff_mul, PowerSeries.coeff_mk, mul_coeff, isPwo_support]
classical
- refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
- ext m
- simp only [mem_antidiagonal, mem_addAntidiagonal, and_congr_left_iff, mem_filter,
- mem_support]
- rintro h
- rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
+ refine (sum_filter_ne_zero _).symm.trans $ (sum_congr ?_ fun _ _ ↦ rfl).trans $
+ sum_filter_ne_zero _
+ ext m
+ simp only [mem_antidiagonal, mem_addAntidiagonal, and_congr_left_iff, mem_filter,
+ mem_support]
+ rintro h
+ rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_power_series HahnSeries.toPowerSeries
theorem coeff_toPowerSeries {f : HahnSeries ℕ R} {n : ℕ} :
@@ -1231,7 +1232,8 @@ def toMvPowerSeries {σ : Type*} [Fintype σ] : HahnSeries (σ →₀ ℕ) R ≃
classical
change (f * g).coeff n = _
simp_rw [mul_coeff]
- refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
+ refine' (sum_filter_ne_zero _).symm.trans $ (sum_congr _ fun _ _ ↦ rfl).trans $
+ sum_filter_ne_zero _
ext m
simp only [and_congr_left_iff, mem_addAntidiagonal, mem_filter, mem_support,
Finset.mem_antidiagonal]
@@ -798,7 +798,7 @@ private theorem mul_assoc' [NonUnitalSemiring R] (x y z : HahnSeries Γ R) :
obtain ⟨⟨nx, H, rfl⟩, ny, nz, rfl⟩ := H1
exact
⟨i + k, l, i, k, ⟨⟨Set.add_mem_add nx ny, nz, add_assoc _ _ _⟩ , nx, ny, rfl⟩,
- fun h => H2 <| by rw [←h, mul_assoc], rfl⟩
+ fun h => H2 <| by rw [← h, mul_assoc], rfl⟩
· rintro ⟨⟨i, j⟩, ⟨k, l⟩⟩ _ _
simp [mul_assoc]
@@ -1202,7 +1202,7 @@ theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
induction' n with n ih
· simp
rfl
- · rw [pow_succ, pow_succ, ih, ofPowerSeries_X, mul_comm, single_mul_single, one_mul,
+ · rw [pow_succ, ih, ofPowerSeries_X, mul_comm, single_mul_single, one_mul,
Nat.cast_succ, add_comm]
#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_pow
@@ -194,11 +194,8 @@ theorem single_ne_zero (h : r ≠ 0) : single a r ≠ 0 := fun con =>
#align hahn_series.single_ne_zero HahnSeries.single_ne_zero
@[simp]
-theorem single_eq_zero_iff {a : Γ} {r : R} : single a r = 0 ↔ r = 0 := by
- constructor
- · contrapose!
- exact single_ne_zero
- · simp (config := { contextual := true })
+theorem single_eq_zero_iff {a : Γ} {r : R} : single a r = 0 ↔ r = 0 :=
+ map_eq_zero_iff _ <| single_injective a
#align hahn_series.single_eq_zero_iff HahnSeries.single_eq_zero_iff
instance [Nonempty Γ] [Nontrivial R] : Nontrivial (HahnSeries Γ R) :=
@@ -388,7 +385,7 @@ theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y :
by_cases hy : y = 0; · simp [hy]
rw [order_of_ne hx, order_of_ne hy, order_of_ne hxy]
refine' le_of_eq_of_le _ (Set.IsWf.min_le_min_of_subset (support_add_subset (x := x) (y := y)))
- · exact (Set.IsWf.min_union _ _ _ _).symm
+ exact (Set.IsWf.min_union _ _ _ _).symm
#align hahn_series.min_order_le_order_add HahnSeries.min_order_le_order_add
/-- `single` as an additive monoid/group homomorphism -/
@@ -746,8 +743,8 @@ theorem mul_single_zero_coeff [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSer
#align hahn_series.mul_single_zero_coeff HahnSeries.mul_single_zero_coeff
theorem single_zero_mul_coeff [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeries Γ R} {a : Γ} :
- ((single 0 r : HahnSeries Γ R) * x).coeff a = r * x.coeff a :=
- by rw [← add_zero a, single_mul_coeff_add, add_zero]
+ ((single 0 r : HahnSeries Γ R) * x).coeff a = r * x.coeff a := by
+ rw [← add_zero a, single_mul_coeff_add, add_zero]
#align hahn_series.single_zero_mul_coeff HahnSeries.single_zero_mul_coeff
@[simp]
@@ -873,16 +870,12 @@ instance [CommRing R] : CommRing (HahnSeries Γ R) :=
instance {Γ} [LinearOrderedCancelAddCommMonoid Γ] [NonUnitalNonAssocSemiring R] [NoZeroDivisors R] :
NoZeroDivisors (HahnSeries Γ R) where
- eq_zero_or_eq_zero_of_mul_eq_zero {x} {y} xy := by
- by_cases hx : x = 0
- · left
- exact hx
- right
+ eq_zero_or_eq_zero_of_mul_eq_zero {x y} xy := by
contrapose! xy
rw [Ne, HahnSeries.ext_iff, Function.funext_iff, not_forall]
refine' ⟨x.order + y.order, _⟩
rw [mul_coeff_order_add_order x y, zero_coeff, mul_eq_zero]
- simp [coeff_order_ne_zero, hx, xy]
+ simp [coeff_order_ne_zero, xy]
instance {Γ} [LinearOrderedCancelAddCommMonoid Γ] [Ring R] [IsDomain R] :
IsDomain (HahnSeries Γ R) :=
These parallel the lemmas for Polynomial
@@ -1270,12 +1270,7 @@ def toPowerSeriesAlg : HahnSeries ℕ A ≃ₐ[R] PowerSeries A :=
{ toPowerSeries with
commutes' := fun r => by
ext n
- simp only [algebraMap_apply, PowerSeries.algebraMap_apply, C_apply,
- coeff_toPowerSeries]
- cases' n with n
- · simp [PowerSeries.coeff_zero_eq_constantCoeff, single_coeff_same]
- · simp [n.succ_ne_zero, Ne.def, not_false_iff, single_coeff_of_ne]
- rw [PowerSeries.coeff_C, if_neg n.succ_ne_zero] }
+ cases n <;> simp [algebraMap_apply, PowerSeries.algebraMap_apply] }
#align hahn_series.to_power_series_alg HahnSeries.toPowerSeriesAlg
variable (Γ) [StrictOrderedSemiring Γ]
Finset.Nat.antidiagonal
(#7486)
We define a type class Finset.HasAntidiagonal A
which contains a function
antidiagonal : A → Finset (A × A)
such that antidiagonal n
is the Finset of all pairs adding to n
, as witnessed by mem_antidiagonal
.
When A
is a canonically ordered add monoid with locally finite order
this typeclass can be instantiated with Finset.antidiagonalOfLocallyFinite
.
This applies in particular when A
is ℕ
, more generally or σ →₀ ℕ
,
or even ι →₀ A
under the additional assumption OrderedSub A
that make it a canonically ordered add monoid.
(In fact, we would just need an AddMonoid
with a compatible order,
finite Iic
, such that if a + b = n
, then a, b ≤ n
,
and any finiteness condition would be OK.)
For computational reasons it is better to manually provide instances for ℕ
and σ →₀ ℕ
, to avoid quadratic runtime performance.
These instances are provided as Finset.Nat.instHasAntidiagonal
and Finsupp.instHasAntidiagonal
.
This is why Finset.antidiagonalOfLocallyFinite
is an abbrev
and not an instance
.
This definition does not exactly match with that of Multiset.antidiagonal
defined in Mathlib.Data.Multiset.Antidiagonal
, because of the multiplicities.
Indeed, by counting multiplicities, Multiset α
is equivalent to α →₀ ℕ
,
but Finset.antidiagonal
and Multiset.antidiagonal
will return different objects.
For example, for s : Multiset ℕ := {0,0,0}
, Multiset.antidiagonal s
has 8 elements
but Finset.antidiagonal s
has only 4.
def s : Multiset ℕ := {0, 0, 0}
#eval (Finset.antidiagonal s).card -- 4
#eval Multiset.card (Multiset.antidiagonal s) -- 8
HasMulAntidiagonal
(for monoids).
For PNat
, we will recover the set of divisors of a strictly positive integer.This closes #7917
Co-authored by: María Inés de Frutos-Fernández <mariaines.dff@gmail.com> and Eric Wieser <efw27@cam.ac.uk>
Co-authored-by: Antoine Chambert-Loir <antoine.chambert-loir@math.univ-paris-diderot.fr> Co-authored-by: Mario Carneiro <di.gama@gmail.com> Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
@@ -1126,7 +1126,7 @@ def toPowerSeries : HahnSeries ℕ R ≃+* PowerSeries R where
classical
refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
ext m
- simp only [Nat.mem_antidiagonal, mem_addAntidiagonal, and_congr_left_iff, mem_filter,
+ simp only [mem_antidiagonal, mem_addAntidiagonal, and_congr_left_iff, mem_filter,
mem_support]
rintro h
rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
@@ -1241,7 +1241,7 @@ def toMvPowerSeries {σ : Type*} [Fintype σ] : HahnSeries (σ →₀ ℕ) R ≃
refine' sum_filter_ne_zero.symm.trans ((sum_congr _ fun _ _ => rfl).trans sum_filter_ne_zero)
ext m
simp only [and_congr_left_iff, mem_addAntidiagonal, mem_filter, mem_support,
- Finsupp.mem_antidiagonal]
+ Finset.mem_antidiagonal]
rintro h
rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_mv_power_series HahnSeries.toMvPowerSeries
This removes redundant field values of the form add := add
for smaller terms and less unfolding during unification.
A list of all files containing a structure instance of the form { a1, ... with x1 := val, ... }
where some xi
is a field of some aj
was generated by modifying the structure instance elaboration algorithm to print such overlaps to stdout in a custom toolchain.
Using that toolchain, I went through each file on the list and attempted to remove algebraic fields that overlapped and were redundant, eg add := add
and not toFun
(though some other ones did creep in). If things broke (which was the case in a couple of cases), I did not push further and reverted.
It is possible that pushing harder and trying to remove all redundant overlaps will yield further improvements.
@@ -808,9 +808,6 @@ private theorem mul_assoc' [NonUnitalSemiring R] (x y z : HahnSeries Γ R) :
instance [NonUnitalNonAssocSemiring R] : NonUnitalNonAssocSemiring (HahnSeries Γ R) :=
{ inferInstanceAs (AddCommMonoid (HahnSeries Γ R)),
inferInstanceAs (Distrib (HahnSeries Γ R)) with
- zero := 0
- add := (· + ·)
- mul := (· * ·)
zero_mul := fun _ => by
ext
simp [mul_coeff]
@@ -820,18 +817,11 @@ instance [NonUnitalNonAssocSemiring R] : NonUnitalNonAssocSemiring (HahnSeries
instance [NonUnitalSemiring R] : NonUnitalSemiring (HahnSeries Γ R) :=
{ inferInstanceAs (NonUnitalNonAssocSemiring (HahnSeries Γ R)) with
- zero := 0
- add := (· + ·)
- mul := (· * ·)
mul_assoc := mul_assoc' }
instance [NonAssocSemiring R] : NonAssocSemiring (HahnSeries Γ R) :=
{ AddMonoidWithOne.unary,
inferInstanceAs (NonUnitalNonAssocSemiring (HahnSeries Γ R)) with
- zero := 0
- one := 1
- add := (· + ·)
- mul := (· * ·)
one_mul := fun x => by
ext
exact single_zero_mul_coeff.trans (one_mul _)
@@ -841,11 +831,7 @@ instance [NonAssocSemiring R] : NonAssocSemiring (HahnSeries Γ R) :=
instance [Semiring R] : Semiring (HahnSeries Γ R) :=
{ inferInstanceAs (NonAssocSemiring (HahnSeries Γ R)),
- inferInstanceAs (NonUnitalSemiring (HahnSeries Γ R)) with
- zero := 0
- one := 1
- add := (· + ·)
- mul := (· * ·) }
+ inferInstanceAs (NonUnitalSemiring (HahnSeries Γ R)) with }
instance [NonUnitalCommSemiring R] : NonUnitalCommSemiring (HahnSeries Γ R) :=
{ inferInstanceAs (NonUnitalSemiring (HahnSeries Γ R)) with
@@ -347,8 +347,8 @@ section AddMonoid
variable [AddMonoid R]
-instance : Add (HahnSeries Γ R)
- where add x y :=
+instance : Add (HahnSeries Γ R) where
+ add x y :=
{ coeff := x.coeff + y.coeff
isPwo_support' := (x.isPwo_support.union y.isPwo_support).mono (Function.support_add _ _) }
@@ -612,8 +612,8 @@ theorem order_one [MulZeroOneClass R] : order (1 : HahnSeries Γ R) = 0 := by
· exact order_single one_ne_zero
#align hahn_series.order_one HahnSeries.order_one
-instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R)
- where mul x y :=
+instance [NonUnitalNonAssocSemiring R] : Mul (HahnSeries Γ R) where
+ mul x y :=
{ coeff := fun a =>
∑ ij in addAntidiagonal x.isPwo_support y.isPwo_support a, x.coeff ij.fst * y.coeff ij.snd
isPwo_support' :=
@@ -1567,8 +1567,8 @@ section Semiring
variable [OrderedCancelAddCommMonoid Γ] [Semiring R] {α : Type*}
-instance : SMul (HahnSeries Γ R) (SummableFamily Γ R α)
- where smul x s :=
+instance : SMul (HahnSeries Γ R) (SummableFamily Γ R α) where
+ smul x s :=
{ toFun := fun a => x * s a
isPwo_iUnion_support' := by
apply (x.isPwo_support.add s.isPwo_iUnion_support).mono
MulZeroClass.
in mul_zero
/zero_mul
(#6682)
Search&replace MulZeroClass.mul_zero
-> mul_zero
, MulZeroClass.zero_mul
-> zero_mul
.
These were introduced by Mathport, as the full name of mul_zero
is actually MulZeroClass.mul_zero
(it's exported with the short name).
@@ -644,7 +644,7 @@ theorem mul_coeff_right' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {
apply sum_subset_zero_on_sdiff (addAntidiagonal_mono_right hys) _ fun _ _ => rfl
intro b hb
simp only [not_and, mem_sdiff, mem_addAntidiagonal, mem_support, not_imp_not] at hb
- rw [hb.2 hb.1.1 hb.1.2.2, MulZeroClass.mul_zero]
+ rw [hb.2 hb.1.1 hb.1.2.2, mul_zero]
#align hahn_series.mul_coeff_right' HahnSeries.mul_coeff_right'
theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a : Γ} {s : Set Γ}
@@ -655,7 +655,7 @@ theorem mul_coeff_left' [NonUnitalNonAssocSemiring R] {x y : HahnSeries Γ R} {a
apply sum_subset_zero_on_sdiff (addAntidiagonal_mono_left hxs) _ fun _ _ => rfl
intro b hb
simp only [not_and', mem_sdiff, mem_addAntidiagonal, mem_support, not_ne_iff] at hb
- rw [hb.2 ⟨hb.1.2.1, hb.1.2.2⟩, MulZeroClass.zero_mul]
+ rw [hb.2 ⟨hb.1.2.1, hb.1.2.2⟩, zero_mul]
#align hahn_series.mul_coeff_left' HahnSeries.mul_coeff_left'
instance [NonUnitalNonAssocSemiring R] : Distrib (HahnSeries Γ R) :=
@@ -690,7 +690,7 @@ theorem single_mul_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
· simp [hr, mul_coeff]
simp only [hr, smul_coeff, mul_coeff, support_single_of_ne, Ne.def, not_false_iff, smul_eq_mul]
by_cases hx : x.coeff a = 0
- · simp only [hx, MulZeroClass.mul_zero]
+ · simp only [hx, mul_zero]
rw [sum_congr _ fun _ _ => rfl, sum_empty]
ext ⟨a1, a2⟩
simp only [not_mem_empty, not_and, Set.mem_singleton_iff, Classical.not_not,
@@ -719,7 +719,7 @@ theorem mul_single_coeff_add [NonUnitalNonAssocSemiring R] {r : R} {x : HahnSeri
· simp [hr, mul_coeff]
simp only [hr, smul_coeff, mul_coeff, support_single_of_ne, Ne.def, not_false_iff, smul_eq_mul]
by_cases hx : x.coeff a = 0
- · simp only [hx, MulZeroClass.zero_mul]
+ · simp only [hx, zero_mul]
rw [sum_congr _ fun _ _ => rfl, sum_empty]
ext ⟨a1, a2⟩
simp only [not_mem_empty, not_and, Set.mem_singleton_iff, Classical.not_not,
@@ -1595,8 +1595,8 @@ theorem smul_apply {x : HahnSeries Γ R} {s : SummableFamily Γ R α} {a : α} :
instance : Module (HahnSeries Γ R) (SummableFamily Γ R α) where
smul := (· • ·)
- smul_zero _ := ext fun _ => MulZeroClass.mul_zero _
- zero_smul _ := ext fun _ => MulZeroClass.zero_mul _
+ smul_zero _ := ext fun _ => mul_zero _
+ zero_smul _ := ext fun _ => zero_mul _
one_smul _ := ext fun _ => one_mul _
add_smul _ _ _ := ext fun _ => add_mul _ _ _
smul_add _ _ _ := ext fun _ => mul_add _ _ _
@@ -1615,12 +1615,12 @@ theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s)
(Set.subset_iUnion (fun j => support (toFun s j)) a)) _
rintro ⟨i, j⟩ hU ha
rw [mem_addAntidiagonal] at *
- rw [Classical.not_not.1 fun con => ha ⟨hU.1, con, hU.2.2⟩, MulZeroClass.mul_zero]
+ rw [Classical.not_not.1 fun con => ha ⟨hU.1, con, hU.2.2⟩, mul_zero]
· rintro ⟨i, j⟩ _
refine' (s.finite_co_support j).subset _
simp_rw [Function.support_subset_iff', Function.mem_support, Classical.not_not]
intro a ha
- rw [ha, MulZeroClass.mul_zero]
+ rw [ha, mul_zero]
· refine' (sum_congr rfl _).trans (sum_subset (addAntidiagonal_mono_right _) _).symm
· rintro ⟨i, j⟩ _
rw [mul_finsum]
@@ -1632,7 +1632,7 @@ theorem hsum_smul {x : HahnSeries Γ R} {s : SummableFamily Γ R α} : (x • s)
· rintro ⟨i, j⟩ hU ha
rw [mem_addAntidiagonal] at *
rw [← hsum_coeff, Classical.not_not.1 fun con => ha ⟨hU.1, con, hU.2.2⟩,
- MulZeroClass.mul_zero]
+ mul_zero]
#align hahn_series.summable_family.hsum_smul HahnSeries.SummableFamily.hsum_smul
/-- The summation of a `summable_family` as a `LinearMap`. -/
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -61,12 +61,12 @@ noncomputable section
/-- If `Γ` is linearly ordered and `R` has zero, then `HahnSeries Γ R` consists of
formal series over `Γ` with coefficients in `R`, whose supports are well-founded. -/
@[ext]
-structure HahnSeries (Γ : Type _) (R : Type _) [PartialOrder Γ] [Zero R] where
+structure HahnSeries (Γ : Type*) (R : Type*) [PartialOrder Γ] [Zero R] where
coeff : Γ → R
isPwo_support' : (Function.support coeff).IsPwo
#align hahn_series HahnSeries
-variable {Γ : Type _} {R : Type _}
+variable {Γ : Type*} {R : Type*}
namespace HahnSeries
@@ -260,7 +260,7 @@ end Order
section Domain
-variable {Γ' : Type _} [PartialOrder Γ']
+variable {Γ' : Type*} [PartialOrder Γ']
/-- Extends the domain of a `HahnSeries` by an `OrderEmbedding`. -/
def embDomain (f : Γ ↪o Γ') : HahnSeries Γ R → HahnSeries Γ' R := fun x =>
@@ -410,7 +410,7 @@ def coeff.addMonoidHom (g : Γ) : HahnSeries Γ R →+ R where
section Domain
-variable {Γ' : Type _} [PartialOrder Γ']
+variable {Γ' : Type*} [PartialOrder Γ']
theorem embDomain_add (f : Γ ↪o Γ') (x y : HahnSeries Γ R) :
embDomain f (x + y) = embDomain f x + embDomain f y := by
@@ -488,7 +488,7 @@ end Addition
section DistribMulAction
-variable [PartialOrder Γ] {V : Type _} [Monoid R] [AddMonoid V] [DistribMulAction R V]
+variable [PartialOrder Γ] {V : Type*} [Monoid R] [AddMonoid V] [DistribMulAction R V]
instance : SMul R (HahnSeries Γ V) :=
⟨fun r x =>
@@ -515,7 +515,7 @@ instance : DistribMulAction R (HahnSeries Γ V) where
ext
simp [mul_smul]
-variable {S : Type _} [Monoid S] [DistribMulAction S V]
+variable {S : Type*} [Monoid S] [DistribMulAction S V]
instance [SMul R S] [IsScalarTower R S V] : IsScalarTower R S (HahnSeries Γ V) :=
⟨fun r s a => by
@@ -531,7 +531,7 @@ end DistribMulAction
section Module
-variable [PartialOrder Γ] [Semiring R] {V : Type _} [AddCommMonoid V] [Module R V]
+variable [PartialOrder Γ] [Semiring R] {V : Type*} [AddCommMonoid V] [Module R V]
instance : Module R (HahnSeries Γ V) :=
{ inferInstanceAs (DistribMulAction R (HahnSeries Γ V)) with
@@ -559,7 +559,7 @@ def coeff.linearMap (g : Γ) : HahnSeries Γ R →ₗ[R] R :=
section Domain
-variable {Γ' : Type _} [PartialOrder Γ']
+variable {Γ' : Type*} [PartialOrder Γ']
theorem embDomain_smul (f : Γ ↪o Γ') (r : R) (x : HahnSeries Γ R) :
embDomain f (r • x) = r • embDomain f x := by
@@ -1003,7 +1003,7 @@ end Semiring
section Domain
-variable {Γ' : Type _} [OrderedCancelAddCommMonoid Γ']
+variable {Γ' : Type*} [OrderedCancelAddCommMonoid Γ']
theorem embDomain_mul [NonUnitalNonAssocSemiring R] (f : Γ ↪o Γ')
(hf : ∀ x y, f (x + y) = f x + f y) (x y : HahnSeries Γ R) :
@@ -1066,7 +1066,7 @@ end Domain
section Algebra
-variable [CommSemiring R] {A : Type _} [Semiring A] [Algebra R A]
+variable [CommSemiring R] {A : Type*} [Semiring A] [Algebra R A]
instance : Algebra R (HahnSeries Γ A) where
toRingHom := C.comp (algebraMap R A)
@@ -1101,7 +1101,7 @@ instance [Nontrivial Γ] [Nontrivial R] : Nontrivial (Subalgebra R (HahnSeries
section Domain
-variable {Γ' : Type _} [OrderedCancelAddCommMonoid Γ']
+variable {Γ' : Type*} [OrderedCancelAddCommMonoid Γ']
/-- Extending the domain of Hahn series is an algebra homomorphism. -/
@[simps!]
@@ -1234,7 +1234,7 @@ even though we assume `Fintype σ` as this is more natural for alignment with `M
After importing `Algebra.Order.Pi` the ring `HahnSeries (σ → ℕ) R` could be constructed instead.
-/
@[simps]
-def toMvPowerSeries {σ : Type _} [Fintype σ] : HahnSeries (σ →₀ ℕ) R ≃+* MvPowerSeries σ R where
+def toMvPowerSeries {σ : Type*} [Fintype σ] : HahnSeries (σ →₀ ℕ) R ≃+* MvPowerSeries σ R where
toFun f := f.coeff
invFun f := ⟨(f : (σ →₀ ℕ) → R), Finsupp.isPwo _⟩
left_inv f := by
@@ -1260,7 +1260,7 @@ def toMvPowerSeries {σ : Type _} [Fintype σ] : HahnSeries (σ →₀ ℕ) R
rw [and_iff_right (left_ne_zero_of_mul h), and_iff_right (right_ne_zero_of_mul h)]
#align hahn_series.to_mv_power_series HahnSeries.toMvPowerSeries
-variable {σ : Type _} [Fintype σ]
+variable {σ : Type*} [Fintype σ]
theorem coeff_toMvPowerSeries {f : HahnSeries (σ →₀ ℕ) R} {n : σ →₀ ℕ} :
MvPowerSeries.coeff R n (toMvPowerSeries f) = f.coeff n :=
@@ -1276,7 +1276,7 @@ end Semiring
section Algebra
-variable (R) [CommSemiring R] {A : Type _} [Semiring A] [Algebra R A]
+variable (R) [CommSemiring R] {A : Type*} [Semiring A] [Algebra R A]
/-- The `R`-algebra `HahnSeries ℕ A` is isomorphic to `PowerSeries A`. -/
@[simps!]
@@ -1303,13 +1303,13 @@ def ofPowerSeriesAlg : PowerSeries A →ₐ[R] HahnSeries Γ A :=
(AlgEquiv.toAlgHom (toPowerSeriesAlg R).symm)
#align hahn_series.of_power_series_alg HahnSeries.ofPowerSeriesAlg
-instance powerSeriesAlgebra {S : Type _} [CommSemiring S] [Algebra S (PowerSeries R)] :
+instance powerSeriesAlgebra {S : Type*} [CommSemiring S] [Algebra S (PowerSeries R)] :
Algebra S (HahnSeries Γ R) :=
RingHom.toAlgebra <| (ofPowerSeries Γ R).comp (algebraMap S (PowerSeries R))
#align hahn_series.power_series_algebra HahnSeries.powerSeriesAlgebra
variable {R}
-variable {S : Type _} [CommSemiring S] [Algebra S (PowerSeries R)]
+variable {S : Type*} [CommSemiring S] [Algebra S (PowerSeries R)]
theorem algebraMap_apply' (x : S) :
algebraMap S (HahnSeries Γ R) x = ofPowerSeries Γ R (algebraMap S (PowerSeries R) x) :=
@@ -1398,7 +1398,7 @@ variable (Γ) (R) [PartialOrder Γ] [AddCommMonoid R]
/-- An infinite family of Hahn series which has a formal coefficient-wise sum.
The requirements for this are that the union of the supports of the series is well-founded,
and that only finitely many series are nonzero at any given coefficient. -/
-structure SummableFamily (α : Type _) where
+structure SummableFamily (α : Type*) where
toFun : α → HahnSeries Γ R
isPwo_iUnion_support' : Set.IsPwo (⋃ a : α, (toFun a).support)
finite_co_support' : ∀ g : Γ, { a | (toFun a).coeff g ≠ 0 }.Finite
@@ -1410,7 +1410,7 @@ namespace SummableFamily
section AddCommMonoid
-variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
+variable [PartialOrder Γ] [AddCommMonoid R] {α : Type*}
instance : FunLike (SummableFamily Γ R α) α fun _ => HahnSeries Γ R where
coe := toFun
@@ -1527,7 +1527,7 @@ end AddCommMonoid
section AddCommGroup
-variable [PartialOrder Γ] [AddCommGroup R] {α : Type _} {s t : SummableFamily Γ R α} {a : α}
+variable [PartialOrder Γ] [AddCommGroup R] {α : Type*} {s t : SummableFamily Γ R α} {a : α}
instance : AddCommGroup (SummableFamily Γ R α) :=
{ inferInstanceAs (AddCommMonoid (SummableFamily Γ R α)) with
@@ -1565,7 +1565,7 @@ end AddCommGroup
section Semiring
-variable [OrderedCancelAddCommMonoid Γ] [Semiring R] {α : Type _}
+variable [OrderedCancelAddCommMonoid Γ] [Semiring R] {α : Type*}
instance : SMul (HahnSeries Γ R) (SummableFamily Γ R α)
where smul x s :=
@@ -1644,7 +1644,7 @@ def lsum : SummableFamily Γ R α →ₗ[HahnSeries Γ R] HahnSeries Γ R where
#align hahn_series.summable_family.lsum HahnSeries.SummableFamily.lsum
@[simp]
-theorem hsum_sub {R : Type _} [Ring R] {s t : SummableFamily Γ R α} :
+theorem hsum_sub {R : Type*} [Ring R] {s t : SummableFamily Γ R α} :
(s - t).hsum = s.hsum - t.hsum := by
rw [← lsum_apply, LinearMap.map_sub, lsum_apply, lsum_apply]
#align hahn_series.summable_family.hsum_sub HahnSeries.SummableFamily.hsum_sub
@@ -1653,7 +1653,7 @@ end Semiring
section OfFinsupp
-variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
+variable [PartialOrder Γ] [AddCommMonoid R] {α : Type*}
/-- A family with only finitely many nonzero elements is summable. -/
def ofFinsupp (f : α →₀ HahnSeries Γ R) : SummableFamily Γ R α where
@@ -1694,7 +1694,7 @@ end OfFinsupp
section EmbDomain
-variable [PartialOrder Γ] [AddCommMonoid R] {α β : Type _}
+variable [PartialOrder Γ] [AddCommMonoid R] {α β : Type*}
/-- A summable family can be reindexed by an embedding without changing its sum. -/
def embDomain (s : SummableFamily Γ R α) (f : α ↪ β) : SummableFamily Γ R β where
@@ -1412,8 +1412,9 @@ section AddCommMonoid
variable [PartialOrder Γ] [AddCommMonoid R] {α : Type _}
-instance : CoeFun (SummableFamily Γ R α) fun _ => α → HahnSeries Γ R :=
- ⟨toFun⟩
+instance : FunLike (SummableFamily Γ R α) α fun _ => HahnSeries Γ R where
+ coe := toFun
+ coe_injective' | ⟨_, _, _⟩, ⟨_, _, _⟩, rfl => rfl
theorem isPwo_iUnion_support (s : SummableFamily Γ R α) : Set.IsPwo (⋃ a : α, (s a).support) :=
s.isPwo_iUnion_support'
@@ -1424,13 +1425,13 @@ theorem finite_co_support (s : SummableFamily Γ R α) (g : Γ) :
s.finite_co_support' g
#align hahn_series.summable_family.finite_co_support HahnSeries.SummableFamily.finite_co_support
-theorem coe_injective : @Function.Injective (SummableFamily Γ R α) (α → HahnSeries Γ R) (⇑)
- | ⟨f1, hU1, hf1⟩, ⟨f2, _, _⟩, h => by congr
+theorem coe_injective : @Function.Injective (SummableFamily Γ R α) (α → HahnSeries Γ R) (⇑) :=
+ FunLike.coe_injective
#align hahn_series.summable_family.coe_injective HahnSeries.SummableFamily.coe_injective
@[ext]
theorem ext {s t : SummableFamily Γ R α} (h : ∀ a : α, s a = t a) : s = t :=
- coe_injective <| funext h
+ FunLike.ext s t h
#align hahn_series.summable_family.ext HahnSeries.SummableFamily.ext
instance : Add (SummableFamily Γ R α) :=
@@ -2,11 +2,6 @@
Copyright (c) 2021 Aaron Anderson. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Aaron Anderson
-
-! This file was ported from Lean 3 source module ring_theory.hahn_series
-! leanprover-community/mathlib commit a484a7d0eade4e1268f4fb402859b6686037f965
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Order.WellFoundedSet
import Mathlib.Algebra.BigOperators.Finprod
@@ -16,6 +11,8 @@ import Mathlib.Data.Finsupp.Pwo
import Mathlib.Data.Finset.MulAntidiagonal
import Mathlib.Algebra.Order.Group.WithTop
+#align_import ring_theory.hahn_series from "leanprover-community/mathlib"@"a484a7d0eade4e1268f4fb402859b6686037f965"
+
/-!
# Hahn Series
If `Γ` is ordered and `R` has zero, then `HahnSeries Γ R` consists of formal series over `Γ` with
This PR is the result of running
find . -type f -name "*.lean" -exec sed -i -E 's/^( +)\. /\1· /' {} \;
find . -type f -name "*.lean" -exec sed -i -E 'N;s/^( +·)\n +(.*)$/\1 \2/;P;D' {} \;
which firstly replaces .
focusing dots with ·
and secondly removes isolated instances of such dots, unifying them with the following line. A new rule is placed in the style linter to verify this.
@@ -391,7 +391,7 @@ theorem min_order_le_order_add {Γ} [LinearOrderedCancelAddCommMonoid Γ] {x y :
by_cases hy : y = 0; · simp [hy]
rw [order_of_ne hx, order_of_ne hy, order_of_ne hxy]
refine' le_of_eq_of_le _ (Set.IsWf.min_le_min_of_subset (support_add_subset (x := x) (y := y)))
- . exact (Set.IsWf.min_union _ _ _ _).symm
+ · exact (Set.IsWf.min_union _ _ _ _).symm
#align hahn_series.min_order_le_order_add HahnSeries.min_order_le_order_add
/-- `single` as an additive monoid/group homomorphism -/
@@ -1226,7 +1226,7 @@ theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
induction' n with n ih
· simp
rfl
- . rw [pow_succ, pow_succ, ih, ofPowerSeries_X, mul_comm, single_mul_single, one_mul,
+ · rw [pow_succ, pow_succ, ih, ofPowerSeries_X, mul_comm, single_mul_single, one_mul,
Nat.cast_succ, add_comm]
#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_pow
at
and goals (#5387)
Changes are of the form
some_tactic at h⊢
-> some_tactic at h ⊢
some_tactic at h
-> some_tactic at h
@@ -789,7 +789,7 @@ private theorem mul_assoc' [NonUnitalSemiring R] (x y z : HahnSeries Γ R) :
refine' sum_bij_ne_zero (fun a _ _ => ⟨⟨a.2.1, a.2.2 + a.1.2⟩, ⟨a.2.2, a.1.2⟩⟩) _ _ _ _
· rintro ⟨⟨i, j⟩, ⟨k, l⟩⟩ H1 H2
simp only [and_true_iff, Set.image2_add, eq_self_iff_true, mem_addAntidiagonal, Ne.def,
- Set.image_prod, mem_sigma, Set.mem_setOf_eq] at H1 H2⊢
+ Set.image_prod, mem_sigma, Set.mem_setOf_eq] at H1 H2 ⊢
obtain ⟨⟨H3, nz, rfl⟩, nx, ny, rfl⟩ := H1
exact ⟨⟨nx, Set.add_mem_add ny nz, (add_assoc _ _ _).symm⟩, ny, nz⟩
· rintro ⟨⟨i1, j1⟩, k1, l1⟩ ⟨⟨i2, j2⟩, k2, l2⟩ H1 H2 H3 H4 H5
@@ -800,7 +800,7 @@ private theorem mul_assoc' [NonUnitalSemiring R] (x y z : HahnSeries Γ R) :
simp only [and_true_iff, Prod.mk.inj_iff, eq_self_iff_true, heq_iff_eq, ← H1.2.2.2, ← H3.2.2.2]
· rintro ⟨⟨i, j⟩, ⟨k, l⟩⟩ H1 H2
simp only [exists_prop, Set.image2_add, Prod.mk.inj_iff, mem_addAntidiagonal, Sigma.exists,
- Ne.def, Set.image_prod, mem_sigma, Set.mem_setOf_eq, heq_iff_eq, Prod.exists] at H1 H2⊢
+ Ne.def, Set.image_prod, mem_sigma, Set.mem_setOf_eq, heq_iff_eq, Prod.exists] at H1 H2 ⊢
obtain ⟨⟨nx, H, rfl⟩, ny, nz, rfl⟩ := H1
exact
⟨i + k, l, i, k, ⟨⟨Set.add_mem_add nx ny, nz, add_assoc _ _ _⟩ , nx, ny, rfl⟩,
@@ -1161,7 +1161,7 @@ theorem coeff_toPowerSeries_symm {f : PowerSeries R} {n : ℕ} :
variable (Γ R) [StrictOrderedSemiring Γ]
-/-- Casts a power series as a Hahn series with coefficients from an `StrictOrderedSemiring`. -/
+/-- Casts a power series as a Hahn series with coefficients from a `StrictOrderedSemiring`. -/
def ofPowerSeries : PowerSeries R →+* HahnSeries Γ R :=
(HahnSeries.embDomainRingHom (Nat.castAddMonoidHom Γ) Nat.strictMono_cast.injective fun _ _ =>
Nat.cast_le).comp
@@ -1297,7 +1297,7 @@ def toPowerSeriesAlg : HahnSeries ℕ A ≃ₐ[R] PowerSeries A :=
variable (Γ) [StrictOrderedSemiring Γ]
-/-- Casting a power series as a Hahn series with coefficients from an `StrictOrderedSemiring`
+/-- Casting a power series as a Hahn series with coefficients from a `StrictOrderedSemiring`
is an algebra homomorphism. -/
@[simps!]
def ofPowerSeriesAlg : PowerSeries A →ₐ[R] HahnSeries Γ A :=
@@ -31,7 +31,7 @@ in the file `RingTheory/LaurentSeries`.
* If `Γ` is ordered and `R` has zero, then `HahnSeries Γ R` consists of
formal series over `Γ` with coefficients in `R`, whose supports are partially well-ordered.
* If `R` is a (commutative) additive monoid or group, then so is `HahnSeries Γ R`.
- * If `R` is a (comm_)(semi)ring, then so is `HahnSeries Γ R`.
+ * If `R` is a (commutative) (semi-)ring, then so is `HahnSeries Γ R`.
* `HahnSeries.addVal Γ R` defines an `AddValuation` on `HahnSeries Γ R` when `Γ` is linearly
ordered.
* A `HahnSeries.SummableFamily` is a family of Hahn series such that the union of their supports
@@ -25,7 +25,7 @@ a linearly ordered abelian group and `R` is a field, in which case `HahnSeries
valued field, with value group `Γ`.
These generalize Laurent series (with value group `ℤ`), and Laurent series are implemented that way
-in the file `ring_theory/laurent_series`.
+in the file `RingTheory/LaurentSeries`.
## Main Definitions
* If `Γ` is ordered and `R` has zero, then `HahnSeries Γ R` consists of
@@ -42,7 +42,7 @@ in the file `ring_theory/laurent_series`.
`HahnSeries.SummableFamily`, and formally summable families whose sums do not converge
topologically.
* Laurent series over `R` are implemented as `HahnSeries ℤ R` in the file
- `ring_theory/laurent_series`.
+ `RingTheory/LaurentSeries`.
## TODO
* Build an API for the variable `X` (defined to be `single 1 1 : HahnSeries Γ R`) in analogy to
@@ -1220,7 +1220,7 @@ theorem ofPowerSeries_X : ofPowerSeries Γ R PowerSeries.X = single 1 1 := by
#align hahn_series.of_power_series_X HahnSeries.ofPowerSeries_X
@[simp]
-theorem ofPowerSeries_x_pow {R} [CommSemiring R] (n : ℕ) :
+theorem ofPowerSeries_X_pow {R} [CommSemiring R] (n : ℕ) :
ofPowerSeries Γ R (PowerSeries.X ^ n) = single (n : Γ) 1 := by
rw [RingHom.map_pow]
induction' n with n ih
@@ -1228,7 +1228,7 @@ theorem ofPowerSeries_x_pow {R} [CommSemiring R] (n : ℕ) :
rfl
. rw [pow_succ, pow_succ, ih, ofPowerSeries_X, mul_comm, single_mul_single, one_mul,
Nat.cast_succ, add_comm]
-#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_x_pow
+#align hahn_series.of_power_series_X_pow HahnSeries.ofPowerSeries_X_pow
-- Lemmas about converting hahn_series over fintype to and from mv_power_series
/-- The ring `HahnSeries (σ →₀ ℕ) R` is isomorphic to `MvPowerSeries σ R` for a `Fintype` `σ`.
The unported dependencies are