ring_theory.chain_of_divisorsMathlib.RingTheory.ChainOfDivisors

This file has been ported!

Changes since the initial port

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.

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(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)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -415,7 +415,7 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
             obtain ⟨x, hx⟩ := l;
             rw [Subtype.coe_mk, associatesEquivOfUniqueUnits_apply, out_dvd_iff]
             exact hx⟩),
-      mk_le_mk_iff_dvd_iff.mpr (Subtype.prop (d ⟨associatesEquivOfUniqueUnits ↑l, _⟩))⟩
+      mk_le_mk_iff_dvd.mpr (Subtype.prop (d ⟨associatesEquivOfUniqueUnits ↑l, _⟩))⟩
   invFun l :=
     ⟨Associates.mk
         (d.symm
@@ -423,7 +423,7 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
             obtain ⟨x, hx⟩ := l <;>
                 rw [Subtype.coe_mk, associatesEquivOfUniqueUnits_apply, out_dvd_iff] <;>
               exact hx⟩),
-      mk_le_mk_iff_dvd_iff.mpr (Subtype.prop (d.symm ⟨associatesEquivOfUniqueUnits ↑l, _⟩))⟩
+      mk_le_mk_iff_dvd.mpr (Subtype.prop (d.symm ⟨associatesEquivOfUniqueUnits ↑l, _⟩))⟩
   left_inv := fun ⟨l, hl⟩ => by
     simp only [Subtype.coe_eta, Equiv.symm_apply_apply, Subtype.coe_mk,
       associatesEquivOfUniqueUnits_apply, mk_out, out_mk, normalize_eq]
@@ -432,8 +432,8 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
       associatesEquivOfUniqueUnits_apply, out_mk, normalize_eq, mk_out]
   map_rel_iff' := by
     rintro ⟨a, ha⟩ ⟨b, hb⟩ <;>
-      simp only [Equiv.coe_fn_mk, Subtype.mk_le_mk, Associates.mk_le_mk_iff_dvd_iff, hd,
-        Subtype.coe_mk, associatesEquivOfUniqueUnits_apply, out_dvd_iff, mk_out]
+      simp only [Equiv.coe_fn_mk, Subtype.mk_le_mk, Associates.mk_le_mk_iff_dvd, hd, Subtype.coe_mk,
+        associatesEquivOfUniqueUnits_apply, out_dvd_iff, mk_out]
 #align mk_factor_order_iso_of_factor_dvd_equiv mkFactorOrderIsoOfFactorDvdEquiv
 -/
 
Diff
@@ -4,9 +4,9 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Anne Baanen, Paul Lezeau
 -/
 import Algebra.IsPrimePow
-import Algebra.Squarefree
+import Algebra.Squarefree.Basic
 import Order.Hom.Bounded
-import Algebra.GcdMonoid.Basic
+import Algebra.GCDMonoid.Basic
 
 #align_import ring_theory.chain_of_divisors from "leanprover-community/mathlib"@"86d1873c01a723aba6788f0b9051ae3d23b4c1c3"
 
Diff
@@ -49,13 +49,13 @@ theorem Associates.isAtom_iff {p : Associates M} (h₁ : p ≠ 0) : IsAtom p ↔
     ⟨by simpa only [Associates.isUnit_iff_eq_one] using hp.1, fun a b h =>
       (hp.le_iff.mp ⟨_, h⟩).casesOn (fun ha => Or.inl (a.isUnit_iff_eq_one.mpr ha)) fun ha =>
         Or.inr
-          (show IsUnit b by rw [ha] at h ;
+          (show IsUnit b by rw [ha] at h;
             apply isUnit_of_associated_mul (show Associated (p * b) p by conv_rhs => rw [h]) h₁)⟩,
     fun hp =>
     ⟨by simpa only [Associates.isUnit_iff_eq_one, Associates.bot_eq_one] using hp.1,
       fun b ⟨⟨a, hab⟩, hb⟩ =>
       (hp.isUnit_or_isUnit hab).casesOn
-        (fun hb => show b = ⊥ by rwa [Associates.isUnit_iff_eq_one, ← Associates.bot_eq_one] at hb )
+        (fun hb => show b = ⊥ by rwa [Associates.isUnit_iff_eq_one, ← Associates.bot_eq_one] at hb)
         fun ha =>
         absurd
           (show p ∣ b from
@@ -84,7 +84,7 @@ theorem exists_chain_of_prime_pow {p : Associates M} {n : ℕ} (hn : n ≠ 0) (h
           not_isUnit_of_not_isUnit_dvd hp.not_unit (dvd_pow dvd_rfl (Nat.sub_pos_of_lt h).ne'),
           (pow_mul_pow_sub p h.le).symm⟩
   · obtain ⟨i, i_le, hi⟩ := (dvd_prime_pow hp n).1 h
-    rw [associated_iff_eq] at hi 
+    rw [associated_iff_eq] at hi
     exact ⟨⟨i, Nat.lt_succ_of_le i_le⟩, hi⟩
   · rintro ⟨i, rfl⟩
     exact ⟨p ^ (n - i : ℕ), (pow_mul_pow_sub p (nat.succ_le_succ_iff.mp i.2)).symm⟩
@@ -184,7 +184,7 @@ theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (
   have H : r = c 1 ^ i :=
     by
     have := UniqueFactorizationMonoid.normalizedFactors_prod (ne_zero_of_dvd_ne_zero hq hr)
-    rw [associated_iff_eq, hi, Multiset.prod_replicate] at this 
+    rw [associated_iff_eq, hi, Multiset.prod_replicate] at this
     rw [this]
   refine' ⟨⟨i, _⟩, H⟩
   have : (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card = i + 1 :=
@@ -226,10 +226,10 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
   intro r hr
   obtain ⟨j, -, rfl⟩ := Finset.mem_image.1 hr
   have := h₂.2 ⟨j, rfl⟩
-  rw [hi'] at this 
+  rw [hi'] at this
   obtain ⟨u, hu, hu'⟩ := (dvd_prime_pow (show Prime (c 1) from _) i).1 this
   refine' finset.mem_image.mpr ⟨u, Finset.mem_univ _, _⟩
-  · rw [associated_iff_eq] at hu' ; rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
+  · rw [associated_iff_eq] at hu'; rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
   · rw [← irreducible_iff_prime]; exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
 #align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chain
 -/
@@ -324,11 +324,11 @@ theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associa
     exact (prime_of_normalized_factor 1 hp).not_unit isUnit_one
   · obtain ⟨x, hx⟩ :=
       d.surjective ⟨b, le_trans (le_of_lt hb) (d ⟨p, dvd_of_mem_normalized_factors hp⟩).Prop⟩
-    rw [← Subtype.coe_mk b _, Subtype.coe_lt_coe, ← hx] at hb 
+    rw [← Subtype.coe_mk b _, Subtype.coe_lt_coe, ← hx] at hb
     letI : OrderBot { l : Associates M // l ≤ m } := Subtype.orderBot bot_le
     letI : OrderBot { l : Associates N // l ≤ n } := Subtype.orderBot bot_le
     suffices x = ⊥ by
-      rw [this, OrderIso.map_bot d] at hx 
+      rw [this, OrderIso.map_bot d] at hx
       refine' (Subtype.mk_eq_bot_iff _ _).mp hx.symm
       exact bot_le
     obtain ⟨a, ha⟩ := x
@@ -351,7 +351,7 @@ theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [Decidabl
   obtain ⟨q, hq, hq'⟩ :=
     exists_mem_normalized_factors_of_dvd hn (map_prime_of_factor_orderIso hn hp d).Irreducible
       (d ⟨p, dvd_of_mem_normalized_factors hp⟩).Prop
-  rw [associated_iff_eq] at hq' 
+  rw [associated_iff_eq] at hq'
   rwa [hq']
 #align mem_normalized_factors_factor_order_iso_of_mem_normalized_factors mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors
 -/
@@ -387,7 +387,7 @@ theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso [DecidableEq
     multiplicity (↑(d ⟨p, dvd_of_mem_normalized_factors hp⟩)) n ≤
       multiplicity (↑(d.symm (d ⟨p, dvd_of_mem_normalized_factors hp⟩))) m
     by
-    rw [d.symm_apply_apply ⟨p, dvd_of_mem_normalized_factors hp⟩, Subtype.coe_mk] at this 
+    rw [d.symm_apply_apply ⟨p, dvd_of_mem_normalized_factors hp⟩, Subtype.coe_mk] at this
     exact this
   letI := Classical.decEq (Associates N)
   simpa only [Subtype.coe_eta] using
@@ -453,7 +453,7 @@ theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [Decidable
             simp [dvd_of_mem_normalized_factors hp]⟩)
     by
     simp only [associatesEquivOfUniqueUnits_apply, out_mk, normalize_eq,
-      associatesEquivOfUniqueUnits_symm_apply] at this 
+      associatesEquivOfUniqueUnits_symm_apply] at this
     obtain ⟨q, hq, hq'⟩ :=
       exists_mem_normalized_factors_of_dvd hn this.irreducible
         (d ⟨p, by apply dvd_of_mem_normalized_factors <;> convert hp⟩).Prop
Diff
@@ -154,7 +154,15 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
 #print DivisorChain.card_subset_divisors_le_length_of_chain /-
 theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
     {c : Fin (n + 1) → Associates M} (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i) {m : Finset (Associates M)}
-    (hm : ∀ r, r ∈ m → r ≤ q) : m.card ≤ n + 1 := by classical
+    (hm : ∀ r, r ∈ m → r ≤ q) : m.card ≤ n + 1 := by
+  classical
+  have mem_image : ∀ r : Associates M, r ≤ q → r ∈ finset.univ.image c :=
+    by
+    intro r hr
+    obtain ⟨i, hi⟩ := h₂.1 hr
+    exact Finset.mem_image.2 ⟨i, Finset.mem_univ _, hi.symm⟩
+  rw [← Finset.card_fin (n + 1)]
+  exact (Finset.card_le_card fun x hx => mem_image x <| hm x hx).trans Finset.card_image_le
 #align divisor_chain.card_subset_divisors_le_length_of_chain DivisorChain.card_subset_divisors_le_length_of_chain
 -/
 
@@ -163,14 +171,66 @@ variable [UniqueFactorizationMonoid M]
 #print DivisorChain.element_of_chain_eq_pow_second_of_chain /-
 theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i)
-    (hr : r ∣ q) (hq : q ≠ 0) : ∃ i : Fin (n + 1), r = c 1 ^ (i : ℕ) := by classical
+    (hr : r ∣ q) (hq : q ≠ 0) : ∃ i : Fin (n + 1), r = c 1 ^ (i : ℕ) := by
+  classical
+  let i := (normalized_factors r).card
+  have hi : normalized_factors r = Multiset.replicate i (c 1) :=
+    by
+    apply Multiset.eq_replicate_of_mem
+    intro b hb
+    refine'
+      eq_second_of_chain_of_prime_dvd hn h₁ (fun r' => h₂) (prime_of_normalized_factor b hb) hr
+        (dvd_of_mem_normalized_factors hb)
+  have H : r = c 1 ^ i :=
+    by
+    have := UniqueFactorizationMonoid.normalizedFactors_prod (ne_zero_of_dvd_ne_zero hq hr)
+    rw [associated_iff_eq, hi, Multiset.prod_replicate] at this 
+    rw [this]
+  refine' ⟨⟨i, _⟩, H⟩
+  have : (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card = i + 1 :=
+    by
+    conv_rhs => rw [← Finset.card_fin (i + 1)]
+    cases n; · contradiction
+    rw [Finset.card_image_iff]
+    refine' Set.injOn_of_injective (fun m m' h => Fin.ext _) _
+    refine'
+      pow_injective_of_not_unit (element_of_chain_not_is_unit_of_index_ne_zero (by simp) h₁) _ h
+    exact Irreducible.ne_zero (second_of_chain_is_irreducible hn h₁ (@h₂) hq)
+  suffices H' : ∀ r ∈ finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ), r ≤ q
+  · simp only [← Nat.succ_le_iff, Nat.succ_eq_add_one, ← this]
+    apply card_subset_divisors_le_length_of_chain (@h₂) H'
+  simp only [Finset.mem_image]
+  rintro r ⟨a, ha, rfl⟩
+  refine' dvd_trans _ hr
+  use c 1 ^ (i - a)
+  rw [pow_mul_pow_sub (c 1)]
+  · exact H
+  · exact nat.succ_le_succ_iff.mp a.2
 #align divisor_chain.element_of_chain_eq_pow_second_of_chain DivisorChain.element_of_chain_eq_pow_second_of_chain
 -/
 
 #print DivisorChain.eq_pow_second_of_chain_of_has_chain /-
 theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
-    (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hq : q ≠ 0) : q = c 1 ^ n := by classical
+    (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hq : q ≠ 0) : q = c 1 ^ n := by
+  classical
+  obtain ⟨i, hi'⟩ := element_of_chain_eq_pow_second_of_chain hn h₁ (fun r => h₂) (dvd_refl q) hq
+  convert hi'
+  refine' (Nat.lt_succ_iff.1 i.prop).antisymm' (Nat.le_of_succ_le_succ _)
+  calc
+    n + 1 = (Finset.univ : Finset (Fin (n + 1))).card := (Finset.card_fin _).symm
+    _ = (finset.univ.image c).card := (finset.card_image_iff.mpr (h₁.injective.inj_on _)).symm
+    _ ≤ (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card := (Finset.card_le_card _)
+    _ ≤ (Finset.univ : Finset (Fin (i + 1))).card := Finset.card_image_le
+    _ = i + 1 := Finset.card_fin _
+  intro r hr
+  obtain ⟨j, -, rfl⟩ := Finset.mem_image.1 hr
+  have := h₂.2 ⟨j, rfl⟩
+  rw [hi'] at this 
+  obtain ⟨u, hu, hu'⟩ := (dvd_prime_pow (show Prime (c 1) from _) i).1 this
+  refine' finset.mem_image.mpr ⟨u, Finset.mem_univ _, _⟩
+  · rw [associated_iff_eq] at hu' ; rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
+  · rw [← irreducible_iff_prime]; exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
 #align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chain
 -/
 
Diff
@@ -154,15 +154,7 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
 #print DivisorChain.card_subset_divisors_le_length_of_chain /-
 theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
     {c : Fin (n + 1) → Associates M} (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i) {m : Finset (Associates M)}
-    (hm : ∀ r, r ∈ m → r ≤ q) : m.card ≤ n + 1 := by
-  classical
-  have mem_image : ∀ r : Associates M, r ≤ q → r ∈ finset.univ.image c :=
-    by
-    intro r hr
-    obtain ⟨i, hi⟩ := h₂.1 hr
-    exact Finset.mem_image.2 ⟨i, Finset.mem_univ _, hi.symm⟩
-  rw [← Finset.card_fin (n + 1)]
-  exact (Finset.card_le_card fun x hx => mem_image x <| hm x hx).trans Finset.card_image_le
+    (hm : ∀ r, r ∈ m → r ≤ q) : m.card ≤ n + 1 := by classical
 #align divisor_chain.card_subset_divisors_le_length_of_chain DivisorChain.card_subset_divisors_le_length_of_chain
 -/
 
@@ -171,66 +163,14 @@ variable [UniqueFactorizationMonoid M]
 #print DivisorChain.element_of_chain_eq_pow_second_of_chain /-
 theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i)
-    (hr : r ∣ q) (hq : q ≠ 0) : ∃ i : Fin (n + 1), r = c 1 ^ (i : ℕ) := by
-  classical
-  let i := (normalized_factors r).card
-  have hi : normalized_factors r = Multiset.replicate i (c 1) :=
-    by
-    apply Multiset.eq_replicate_of_mem
-    intro b hb
-    refine'
-      eq_second_of_chain_of_prime_dvd hn h₁ (fun r' => h₂) (prime_of_normalized_factor b hb) hr
-        (dvd_of_mem_normalized_factors hb)
-  have H : r = c 1 ^ i :=
-    by
-    have := UniqueFactorizationMonoid.normalizedFactors_prod (ne_zero_of_dvd_ne_zero hq hr)
-    rw [associated_iff_eq, hi, Multiset.prod_replicate] at this 
-    rw [this]
-  refine' ⟨⟨i, _⟩, H⟩
-  have : (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card = i + 1 :=
-    by
-    conv_rhs => rw [← Finset.card_fin (i + 1)]
-    cases n; · contradiction
-    rw [Finset.card_image_iff]
-    refine' Set.injOn_of_injective (fun m m' h => Fin.ext _) _
-    refine'
-      pow_injective_of_not_unit (element_of_chain_not_is_unit_of_index_ne_zero (by simp) h₁) _ h
-    exact Irreducible.ne_zero (second_of_chain_is_irreducible hn h₁ (@h₂) hq)
-  suffices H' : ∀ r ∈ finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ), r ≤ q
-  · simp only [← Nat.succ_le_iff, Nat.succ_eq_add_one, ← this]
-    apply card_subset_divisors_le_length_of_chain (@h₂) H'
-  simp only [Finset.mem_image]
-  rintro r ⟨a, ha, rfl⟩
-  refine' dvd_trans _ hr
-  use c 1 ^ (i - a)
-  rw [pow_mul_pow_sub (c 1)]
-  · exact H
-  · exact nat.succ_le_succ_iff.mp a.2
+    (hr : r ∣ q) (hq : q ≠ 0) : ∃ i : Fin (n + 1), r = c 1 ^ (i : ℕ) := by classical
 #align divisor_chain.element_of_chain_eq_pow_second_of_chain DivisorChain.element_of_chain_eq_pow_second_of_chain
 -/
 
 #print DivisorChain.eq_pow_second_of_chain_of_has_chain /-
 theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
-    (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hq : q ≠ 0) : q = c 1 ^ n := by
-  classical
-  obtain ⟨i, hi'⟩ := element_of_chain_eq_pow_second_of_chain hn h₁ (fun r => h₂) (dvd_refl q) hq
-  convert hi'
-  refine' (Nat.lt_succ_iff.1 i.prop).antisymm' (Nat.le_of_succ_le_succ _)
-  calc
-    n + 1 = (Finset.univ : Finset (Fin (n + 1))).card := (Finset.card_fin _).symm
-    _ = (finset.univ.image c).card := (finset.card_image_iff.mpr (h₁.injective.inj_on _)).symm
-    _ ≤ (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card := (Finset.card_le_card _)
-    _ ≤ (Finset.univ : Finset (Fin (i + 1))).card := Finset.card_image_le
-    _ = i + 1 := Finset.card_fin _
-  intro r hr
-  obtain ⟨j, -, rfl⟩ := Finset.mem_image.1 hr
-  have := h₂.2 ⟨j, rfl⟩
-  rw [hi'] at this 
-  obtain ⟨u, hu, hu'⟩ := (dvd_prime_pow (show Prime (c 1) from _) i).1 this
-  refine' finset.mem_image.mpr ⟨u, Finset.mem_univ _, _⟩
-  · rw [associated_iff_eq] at hu' ; rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
-  · rw [← irreducible_iff_prime]; exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
+    (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hq : q ≠ 0) : q = c 1 ^ n := by classical
 #align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chain
 -/
 
Diff
@@ -162,7 +162,7 @@ theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
     obtain ⟨i, hi⟩ := h₂.1 hr
     exact Finset.mem_image.2 ⟨i, Finset.mem_univ _, hi.symm⟩
   rw [← Finset.card_fin (n + 1)]
-  exact (Finset.card_le_of_subset fun x hx => mem_image x <| hm x hx).trans Finset.card_image_le
+  exact (Finset.card_le_card fun x hx => mem_image x <| hm x hx).trans Finset.card_image_le
 #align divisor_chain.card_subset_divisors_le_length_of_chain DivisorChain.card_subset_divisors_le_length_of_chain
 -/
 
@@ -220,8 +220,7 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
   calc
     n + 1 = (Finset.univ : Finset (Fin (n + 1))).card := (Finset.card_fin _).symm
     _ = (finset.univ.image c).card := (finset.card_image_iff.mpr (h₁.injective.inj_on _)).symm
-    _ ≤ (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card :=
-      (Finset.card_le_of_subset _)
+    _ ≤ (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card := (Finset.card_le_card _)
     _ ≤ (Finset.univ : Finset (Fin (i + 1))).card := Finset.card_image_le
     _ = i + 1 := Finset.card_fin _
   intro r hr
Diff
@@ -3,10 +3,10 @@ Copyright (c) 2021 Paul Lezeau. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Anne Baanen, Paul Lezeau
 -/
-import Mathbin.Algebra.IsPrimePow
-import Mathbin.Algebra.Squarefree
-import Mathbin.Order.Hom.Bounded
-import Mathbin.Algebra.GcdMonoid.Basic
+import Algebra.IsPrimePow
+import Algebra.Squarefree
+import Order.Hom.Bounded
+import Algebra.GcdMonoid.Basic
 
 #align_import ring_theory.chain_of_divisors from "leanprover-community/mathlib"@"86d1873c01a723aba6788f0b9051ae3d23b4c1c3"
 
Diff
@@ -106,7 +106,7 @@ theorem first_of_chain_isUnit {q : Associates M} {n : ℕ} {c : Fin (n + 1) →
   by
   obtain ⟨i, hr⟩ := h₂.mp Associates.one_le
   rw [Associates.isUnit_iff_eq_one, ← Associates.le_one_iff, hr]
-  exact h₁.monotone (Fin.zero_le i)
+  exact h₁.monotone (Fin.zero_le' i)
 #align divisor_chain.first_of_chain_is_unit DivisorChain.first_of_chain_isUnit
 -/
 
@@ -135,7 +135,7 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
   obtain ⟨i, rfl⟩ := h₂.1 (dvd_trans hp' hr)
   refine' congr_arg c (eq_of_ge_of_not_gt _ fun hi => _)
   · rw [Fin.le_iff_val_le_val, Fin.val_one, Nat.succ_le_iff, ← Fin.val_zero (n.succ + 1), ←
-      Fin.lt_iff_val_lt_val, Fin.pos_iff_ne_zero]
+      Fin.lt_iff_val_lt_val, Fin.pos_iff_ne_zero']
     rintro rfl
     exact hp.not_unit (first_of_chain_is_unit h₁ @h₂)
   obtain rfl | ⟨j, rfl⟩ := i.eq_zero_or_eq_succ
Diff
@@ -2,17 +2,14 @@
 Copyright (c) 2021 Paul Lezeau. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Anne Baanen, Paul Lezeau
-
-! This file was ported from Lean 3 source module ring_theory.chain_of_divisors
-! leanprover-community/mathlib commit 86d1873c01a723aba6788f0b9051ae3d23b4c1c3
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Algebra.IsPrimePow
 import Mathbin.Algebra.Squarefree
 import Mathbin.Order.Hom.Bounded
 import Mathbin.Algebra.GcdMonoid.Basic
 
+#align_import ring_theory.chain_of_divisors from "leanprover-community/mathlib"@"86d1873c01a723aba6788f0b9051ae3d23b4c1c3"
+
 /-!
 
 # Chains of divisors
Diff
@@ -150,7 +150,7 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
       _ hp.irreducible
   · simpa [Fin.succ_lt_succ_iff, Fin.lt_iff_val_lt_val] using hi
   · refine' Associates.dvdNotUnit_iff_lt.2 (h₁ _)
-    simpa only [Fin.coe_eq_castSuccEmb] using Fin.lt_succ
+    simpa only [Fin.coe_eq_castSucc] using Fin.lt_succ
 #align divisor_chain.eq_second_of_chain_of_prime_dvd DivisorChain.eq_second_of_chain_of_prime_dvd
 -/
 
Diff
@@ -150,7 +150,7 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
       _ hp.irreducible
   · simpa [Fin.succ_lt_succ_iff, Fin.lt_iff_val_lt_val] using hi
   · refine' Associates.dvdNotUnit_iff_lt.2 (h₁ _)
-    simpa only [Fin.coe_eq_castSucc] using Fin.lt_succ
+    simpa only [Fin.coe_eq_castSuccEmb] using Fin.lt_succ
 #align divisor_chain.eq_second_of_chain_of_prime_dvd DivisorChain.eq_second_of_chain_of_prime_dvd
 -/
 
Diff
@@ -46,6 +46,7 @@ and the set of factors of `a`.
 
 variable {M : Type _} [CancelCommMonoidWithZero M]
 
+#print Associates.isAtom_iff /-
 theorem Associates.isAtom_iff {p : Associates M} (h₁ : p ≠ 0) : IsAtom p ↔ Irreducible p :=
   ⟨fun hp =>
     ⟨by simpa only [Associates.isUnit_iff_eq_one] using hp.1, fun a b h =>
@@ -65,11 +66,13 @@ theorem Associates.isAtom_iff {p : Associates M} (h₁ : p ≠ 0) : IsAtom p ↔
               simp [hab] <;> rw [mul_assoc] <;> rw [IsUnit.mul_val_inv ha] <;> rw [mul_one]⟩)
           hb⟩⟩
 #align associates.is_atom_iff Associates.isAtom_iff
+-/
 
 open UniqueFactorizationMonoid multiplicity Irreducible Associates
 
 namespace DivisorChain
 
+#print DivisorChain.exists_chain_of_prime_pow /-
 theorem exists_chain_of_prime_pow {p : Associates M} {n : ℕ} (hn : n ≠ 0) (hp : Prime p) :
     ∃ c : Fin (n + 1) → Associates M,
       c 1 = p ∧ StrictMono c ∧ ∀ {r : Associates M}, r ≤ p ^ n ↔ ∃ i, r = c i :=
@@ -89,14 +92,18 @@ theorem exists_chain_of_prime_pow {p : Associates M} {n : ℕ} (hn : n ≠ 0) (h
   · rintro ⟨i, rfl⟩
     exact ⟨p ^ (n - i : ℕ), (pow_mul_pow_sub p (nat.succ_le_succ_iff.mp i.2)).symm⟩
 #align divisor_chain.exists_chain_of_prime_pow DivisorChain.exists_chain_of_prime_pow
+-/
 
+#print DivisorChain.element_of_chain_not_isUnit_of_index_ne_zero /-
 theorem element_of_chain_not_isUnit_of_index_ne_zero {n : ℕ} {i : Fin (n + 1)} (i_pos : i ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) : ¬IsUnit (c i) :=
   DvdNotUnit.not_unit
     (Associates.dvdNotUnit_iff_lt.2
       (h₁ <| show (0 : Fin (n + 1)) < i from i.pos_iff_ne_zero.mpr i_pos))
 #align divisor_chain.element_of_chain_not_is_unit_of_index_ne_zero DivisorChain.element_of_chain_not_isUnit_of_index_ne_zero
+-/
 
+#print DivisorChain.first_of_chain_isUnit /-
 theorem first_of_chain_isUnit {q : Associates M} {n : ℕ} {c : Fin (n + 1) → Associates M}
     (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i) : IsUnit (c 0) :=
   by
@@ -104,7 +111,9 @@ theorem first_of_chain_isUnit {q : Associates M} {n : ℕ} {c : Fin (n + 1) →
   rw [Associates.isUnit_iff_eq_one, ← Associates.le_one_iff, hr]
   exact h₁.monotone (Fin.zero_le i)
 #align divisor_chain.first_of_chain_is_unit DivisorChain.first_of_chain_isUnit
+-/
 
+#print DivisorChain.second_of_chain_is_irreducible /-
 /-- The second element of a chain is irreducible. -/
 theorem second_of_chain_is_irreducible {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i)
@@ -117,7 +126,9 @@ theorem second_of_chain_is_irreducible {q : Associates M} {n : ℕ} (hn : n ≠
   · exact (Associates.isUnit_iff_eq_one _).mp (first_of_chain_is_unit h₁ @h₂)
   · simpa [Fin.lt_iff_val_lt_val] using h₁.lt_iff_lt.mp hb
 #align divisor_chain.second_of_chain_is_irreducible DivisorChain.second_of_chain_is_irreducible
+-/
 
+#print DivisorChain.eq_second_of_chain_of_prime_dvd /-
 theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
     (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hp : Prime p) (hr : r ∣ q) (hp' : p ∣ r) :
@@ -141,7 +152,9 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
   · refine' Associates.dvdNotUnit_iff_lt.2 (h₁ _)
     simpa only [Fin.coe_eq_castSucc] using Fin.lt_succ
 #align divisor_chain.eq_second_of_chain_of_prime_dvd DivisorChain.eq_second_of_chain_of_prime_dvd
+-/
 
+#print DivisorChain.card_subset_divisors_le_length_of_chain /-
 theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
     {c : Fin (n + 1) → Associates M} (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i) {m : Finset (Associates M)}
     (hm : ∀ r, r ∈ m → r ≤ q) : m.card ≤ n + 1 := by
@@ -154,9 +167,11 @@ theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
   rw [← Finset.card_fin (n + 1)]
   exact (Finset.card_le_of_subset fun x hx => mem_image x <| hm x hx).trans Finset.card_image_le
 #align divisor_chain.card_subset_divisors_le_length_of_chain DivisorChain.card_subset_divisors_le_length_of_chain
+-/
 
 variable [UniqueFactorizationMonoid M]
 
+#print DivisorChain.element_of_chain_eq_pow_second_of_chain /-
 theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i)
     (hr : r ∣ q) (hq : q ≠ 0) : ∃ i : Fin (n + 1), r = c 1 ^ (i : ℕ) := by
@@ -195,7 +210,9 @@ theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (
   · exact H
   · exact nat.succ_le_succ_iff.mp a.2
 #align divisor_chain.element_of_chain_eq_pow_second_of_chain DivisorChain.element_of_chain_eq_pow_second_of_chain
+-/
 
+#print DivisorChain.eq_pow_second_of_chain_of_has_chain /-
 theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
     (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hq : q ≠ 0) : q = c 1 ^ n := by
@@ -219,18 +236,22 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
   · rw [associated_iff_eq] at hu' ; rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
   · rw [← irreducible_iff_prime]; exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
 #align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chain
+-/
 
+#print DivisorChain.isPrimePow_of_has_chain /-
 theorem isPrimePow_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
     (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hq : q ≠ 0) : IsPrimePow q :=
   ⟨c 1, n, irreducible_iff_prime.mp (second_of_chain_is_irreducible hn h₁ (@h₂) hq),
     zero_lt_iff.mpr hn, (eq_pow_second_of_chain_of_has_chain hn h₁ (@h₂) hq).symm⟩
 #align divisor_chain.is_prime_pow_of_has_chain DivisorChain.isPrimePow_of_has_chain
+-/
 
 end DivisorChain
 
 variable {N : Type _} [CancelCommMonoidWithZero N]
 
+#print factor_orderIso_map_one_eq_bot /-
 theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
     (d : { l : Associates M // l ≤ m } ≃o { l : Associates N // l ≤ n }) :
     (d ⟨1, one_dvd m⟩ : Associates N) = 1 :=
@@ -239,7 +260,9 @@ theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
   letI : OrderBot { l : Associates N // l ≤ n } := Subtype.orderBot bot_le
   simp [← Associates.bot_eq_one]
 #align factor_order_iso_map_one_eq_bot factor_orderIso_map_one_eq_bot
+-/
 
+#print coe_factor_orderIso_map_eq_one_iff /-
 theorem coe_factor_orderIso_map_eq_one_iff {m u : Associates M} {n : Associates N} (hu' : u ≤ m)
     (d : Set.Iic m ≃o Set.Iic n) : (d ⟨u, hu'⟩ : Associates N) = 1 ↔ u = 1 :=
   ⟨fun hu =>
@@ -249,6 +272,7 @@ theorem coe_factor_orderIso_map_eq_one_iff {m u : Associates M} {n : Associates
     convert factor_orderIso_map_one_eq_bot d.symm, fun hu => by simp_rw [hu];
     convert factor_orderIso_map_one_eq_bot d⟩
 #align coe_factor_order_iso_map_eq_one_iff coe_factor_orderIso_map_eq_one_iff
+-/
 
 section
 
@@ -256,6 +280,7 @@ variable [UniqueFactorizationMonoid N] [UniqueFactorizationMonoid M]
 
 open DivisorChain
 
+#print pow_image_of_prime_by_factor_orderIso_dvd /-
 theorem pow_image_of_prime_by_factor_orderIso_dvd [DecidableEq (Associates M)] {m p : Associates M}
     {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n)
     {s : ℕ} (hs' : p ^ s ≤ m) : (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : Associates N) ^ s ≤ n :=
@@ -288,7 +313,9 @@ theorem pow_image_of_prime_by_factor_orderIso_dvd [DecidableEq (Associates M)] {
     simpa [Subtype.mk_le_mk] using hc₁''.2 ⟨i, rfl⟩
   exact ne_zero_of_dvd_ne_zero hn (Subtype.prop (d ⟨c₁ 1 ^ s, _⟩))
 #align pow_image_of_prime_by_factor_order_iso_dvd pow_image_of_prime_by_factor_orderIso_dvd
+-/
 
+#print map_prime_of_factor_orderIso /-
 theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associates M}
     {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
     Prime (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : Associates N) :=
@@ -317,7 +344,9 @@ theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associa
           a (subtype.mk_lt_mk.mp <| d.lt_iff_lt.mp hb)
     exact bot_le
 #align map_prime_of_factor_order_iso map_prime_of_factor_orderIso
+-/
 
+#print mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors /-
 theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [DecidableEq (Associates M)]
     [DecidableEq (Associates N)] {m p : Associates M} {n : Associates N} (hn : n ≠ 0)
     (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
@@ -329,9 +358,11 @@ theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [Decidabl
   rw [associated_iff_eq] at hq' 
   rwa [hq']
 #align mem_normalized_factors_factor_order_iso_of_mem_normalized_factors mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors
+-/
 
 variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣ ·) : N → N → Prop)]
 
+#print multiplicity_prime_le_multiplicity_image_by_factor_orderIso /-
 theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hp : p ∈ normalizedFactors m)
     (d : Set.Iic m ≃o Set.Iic n) :
@@ -347,7 +378,9 @@ theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq
     ← pow_dvd_iff_le_multiplicity]
   exact pow_image_of_prime_by_factor_orderIso_dvd hn hp d (pow_multiplicity_dvd _)
 #align multiplicity_prime_le_multiplicity_image_by_factor_order_iso multiplicity_prime_le_multiplicity_image_by_factor_orderIso
+-/
 
+#print multiplicity_prime_eq_multiplicity_image_by_factor_orderIso /-
 theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
     (d : Set.Iic m ≃o Set.Iic n) :
@@ -365,6 +398,7 @@ theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso [DecidableEq
     multiplicity_prime_le_multiplicity_image_by_factor_orderIso
       (mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors hn hp d) d.symm
 #align multiplicity_prime_eq_multiplicity_image_by_factor_order_iso multiplicity_prime_eq_multiplicity_image_by_factor_orderIso
+-/
 
 end
 
@@ -409,6 +443,7 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
 
 variable [UniqueFactorizationMonoid M] [UniqueFactorizationMonoid N] [DecidableEq M]
 
+#print mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors /-
 theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [DecidableEq N] {m p : M}
     {n : N} (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
     {d : { l : M // l ∣ m } ≃ { l : N // l ∣ n }}
@@ -449,9 +484,11 @@ theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [Decidable
       (mk_le_mk_of_dvd (dvd_of_mem_normalized_factors hp))
   simpa only [associated_iff_eq.mp hq', associatesEquivOfUniqueUnits_symm_apply] using hq
 #align mem_normalized_factors_factor_dvd_iso_of_mem_normalized_factors mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors
+-/
 
 variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣ ·) : N → N → Prop)]
 
+#print multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors /-
 theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m p : M} {n : N}
     (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
     {d : { l : M // l ∣ m } ≃ { l : N // l ∣ n }} (hd : ∀ l l', (d l : N) ∣ d l' ↔ (l : M) ∣ l') :
@@ -491,4 +528,5 @@ theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m
       (mk_le_mk_of_dvd (dvd_of_mem_normalized_factors hp))
   rwa [associated_iff_eq.mp hq']
 #align multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors
+-/
 
Diff
@@ -210,7 +210,6 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
       (Finset.card_le_of_subset _)
     _ ≤ (Finset.univ : Finset (Fin (i + 1))).card := Finset.card_image_le
     _ = i + 1 := Finset.card_fin _
-    
   intro r hr
   obtain ⟨j, -, rfl⟩ := Finset.mem_image.1 hr
   have := h₂.2 ⟨j, rfl⟩
Diff
@@ -146,13 +146,13 @@ theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
     {c : Fin (n + 1) → Associates M} (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i) {m : Finset (Associates M)}
     (hm : ∀ r, r ∈ m → r ≤ q) : m.card ≤ n + 1 := by
   classical
-    have mem_image : ∀ r : Associates M, r ≤ q → r ∈ finset.univ.image c :=
-      by
-      intro r hr
-      obtain ⟨i, hi⟩ := h₂.1 hr
-      exact Finset.mem_image.2 ⟨i, Finset.mem_univ _, hi.symm⟩
-    rw [← Finset.card_fin (n + 1)]
-    exact (Finset.card_le_of_subset fun x hx => mem_image x <| hm x hx).trans Finset.card_image_le
+  have mem_image : ∀ r : Associates M, r ≤ q → r ∈ finset.univ.image c :=
+    by
+    intro r hr
+    obtain ⟨i, hi⟩ := h₂.1 hr
+    exact Finset.mem_image.2 ⟨i, Finset.mem_univ _, hi.symm⟩
+  rw [← Finset.card_fin (n + 1)]
+  exact (Finset.card_le_of_subset fun x hx => mem_image x <| hm x hx).trans Finset.card_image_le
 #align divisor_chain.card_subset_divisors_le_length_of_chain DivisorChain.card_subset_divisors_le_length_of_chain
 
 variable [UniqueFactorizationMonoid M]
@@ -161,64 +161,64 @@ theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i)
     (hr : r ∣ q) (hq : q ≠ 0) : ∃ i : Fin (n + 1), r = c 1 ^ (i : ℕ) := by
   classical
-    let i := (normalized_factors r).card
-    have hi : normalized_factors r = Multiset.replicate i (c 1) :=
-      by
-      apply Multiset.eq_replicate_of_mem
-      intro b hb
-      refine'
-        eq_second_of_chain_of_prime_dvd hn h₁ (fun r' => h₂) (prime_of_normalized_factor b hb) hr
-          (dvd_of_mem_normalized_factors hb)
-    have H : r = c 1 ^ i :=
-      by
-      have := UniqueFactorizationMonoid.normalizedFactors_prod (ne_zero_of_dvd_ne_zero hq hr)
-      rw [associated_iff_eq, hi, Multiset.prod_replicate] at this 
-      rw [this]
-    refine' ⟨⟨i, _⟩, H⟩
-    have : (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card = i + 1 :=
-      by
-      conv_rhs => rw [← Finset.card_fin (i + 1)]
-      cases n; · contradiction
-      rw [Finset.card_image_iff]
-      refine' Set.injOn_of_injective (fun m m' h => Fin.ext _) _
-      refine'
-        pow_injective_of_not_unit (element_of_chain_not_is_unit_of_index_ne_zero (by simp) h₁) _ h
-      exact Irreducible.ne_zero (second_of_chain_is_irreducible hn h₁ (@h₂) hq)
-    suffices H' : ∀ r ∈ finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ), r ≤ q
-    · simp only [← Nat.succ_le_iff, Nat.succ_eq_add_one, ← this]
-      apply card_subset_divisors_le_length_of_chain (@h₂) H'
-    simp only [Finset.mem_image]
-    rintro r ⟨a, ha, rfl⟩
-    refine' dvd_trans _ hr
-    use c 1 ^ (i - a)
-    rw [pow_mul_pow_sub (c 1)]
-    · exact H
-    · exact nat.succ_le_succ_iff.mp a.2
+  let i := (normalized_factors r).card
+  have hi : normalized_factors r = Multiset.replicate i (c 1) :=
+    by
+    apply Multiset.eq_replicate_of_mem
+    intro b hb
+    refine'
+      eq_second_of_chain_of_prime_dvd hn h₁ (fun r' => h₂) (prime_of_normalized_factor b hb) hr
+        (dvd_of_mem_normalized_factors hb)
+  have H : r = c 1 ^ i :=
+    by
+    have := UniqueFactorizationMonoid.normalizedFactors_prod (ne_zero_of_dvd_ne_zero hq hr)
+    rw [associated_iff_eq, hi, Multiset.prod_replicate] at this 
+    rw [this]
+  refine' ⟨⟨i, _⟩, H⟩
+  have : (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card = i + 1 :=
+    by
+    conv_rhs => rw [← Finset.card_fin (i + 1)]
+    cases n; · contradiction
+    rw [Finset.card_image_iff]
+    refine' Set.injOn_of_injective (fun m m' h => Fin.ext _) _
+    refine'
+      pow_injective_of_not_unit (element_of_chain_not_is_unit_of_index_ne_zero (by simp) h₁) _ h
+    exact Irreducible.ne_zero (second_of_chain_is_irreducible hn h₁ (@h₂) hq)
+  suffices H' : ∀ r ∈ finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ), r ≤ q
+  · simp only [← Nat.succ_le_iff, Nat.succ_eq_add_one, ← this]
+    apply card_subset_divisors_le_length_of_chain (@h₂) H'
+  simp only [Finset.mem_image]
+  rintro r ⟨a, ha, rfl⟩
+  refine' dvd_trans _ hr
+  use c 1 ^ (i - a)
+  rw [pow_mul_pow_sub (c 1)]
+  · exact H
+  · exact nat.succ_le_succ_iff.mp a.2
 #align divisor_chain.element_of_chain_eq_pow_second_of_chain DivisorChain.element_of_chain_eq_pow_second_of_chain
 
 theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
     (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hq : q ≠ 0) : q = c 1 ^ n := by
   classical
-    obtain ⟨i, hi'⟩ := element_of_chain_eq_pow_second_of_chain hn h₁ (fun r => h₂) (dvd_refl q) hq
-    convert hi'
-    refine' (Nat.lt_succ_iff.1 i.prop).antisymm' (Nat.le_of_succ_le_succ _)
-    calc
-      n + 1 = (Finset.univ : Finset (Fin (n + 1))).card := (Finset.card_fin _).symm
-      _ = (finset.univ.image c).card := (finset.card_image_iff.mpr (h₁.injective.inj_on _)).symm
-      _ ≤ (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card :=
-        (Finset.card_le_of_subset _)
-      _ ≤ (Finset.univ : Finset (Fin (i + 1))).card := Finset.card_image_le
-      _ = i + 1 := Finset.card_fin _
-      
-    intro r hr
-    obtain ⟨j, -, rfl⟩ := Finset.mem_image.1 hr
-    have := h₂.2 ⟨j, rfl⟩
-    rw [hi'] at this 
-    obtain ⟨u, hu, hu'⟩ := (dvd_prime_pow (show Prime (c 1) from _) i).1 this
-    refine' finset.mem_image.mpr ⟨u, Finset.mem_univ _, _⟩
-    · rw [associated_iff_eq] at hu' ; rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
-    · rw [← irreducible_iff_prime]; exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
+  obtain ⟨i, hi'⟩ := element_of_chain_eq_pow_second_of_chain hn h₁ (fun r => h₂) (dvd_refl q) hq
+  convert hi'
+  refine' (Nat.lt_succ_iff.1 i.prop).antisymm' (Nat.le_of_succ_le_succ _)
+  calc
+    n + 1 = (Finset.univ : Finset (Fin (n + 1))).card := (Finset.card_fin _).symm
+    _ = (finset.univ.image c).card := (finset.card_image_iff.mpr (h₁.injective.inj_on _)).symm
+    _ ≤ (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card :=
+      (Finset.card_le_of_subset _)
+    _ ≤ (Finset.univ : Finset (Fin (i + 1))).card := Finset.card_image_le
+    _ = i + 1 := Finset.card_fin _
+    
+  intro r hr
+  obtain ⟨j, -, rfl⟩ := Finset.mem_image.1 hr
+  have := h₂.2 ⟨j, rfl⟩
+  rw [hi'] at this 
+  obtain ⟨u, hu, hu'⟩ := (dvd_prime_pow (show Prime (c 1) from _) i).1 this
+  refine' finset.mem_image.mpr ⟨u, Finset.mem_univ _, _⟩
+  · rw [associated_iff_eq] at hu' ; rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
+  · rw [← irreducible_iff_prime]; exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
 #align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chain
 
 theorem isPrimePow_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
Diff
@@ -51,13 +51,13 @@ theorem Associates.isAtom_iff {p : Associates M} (h₁ : p ≠ 0) : IsAtom p ↔
     ⟨by simpa only [Associates.isUnit_iff_eq_one] using hp.1, fun a b h =>
       (hp.le_iff.mp ⟨_, h⟩).casesOn (fun ha => Or.inl (a.isUnit_iff_eq_one.mpr ha)) fun ha =>
         Or.inr
-          (show IsUnit b by rw [ha] at h;
+          (show IsUnit b by rw [ha] at h ;
             apply isUnit_of_associated_mul (show Associated (p * b) p by conv_rhs => rw [h]) h₁)⟩,
     fun hp =>
     ⟨by simpa only [Associates.isUnit_iff_eq_one, Associates.bot_eq_one] using hp.1,
       fun b ⟨⟨a, hab⟩, hb⟩ =>
       (hp.isUnit_or_isUnit hab).casesOn
-        (fun hb => show b = ⊥ by rwa [Associates.isUnit_iff_eq_one, ← Associates.bot_eq_one] at hb)
+        (fun hb => show b = ⊥ by rwa [Associates.isUnit_iff_eq_one, ← Associates.bot_eq_one] at hb )
         fun ha =>
         absurd
           (show p ∣ b from
@@ -84,7 +84,7 @@ theorem exists_chain_of_prime_pow {p : Associates M} {n : ℕ} (hn : n ≠ 0) (h
           not_isUnit_of_not_isUnit_dvd hp.not_unit (dvd_pow dvd_rfl (Nat.sub_pos_of_lt h).ne'),
           (pow_mul_pow_sub p h.le).symm⟩
   · obtain ⟨i, i_le, hi⟩ := (dvd_prime_pow hp n).1 h
-    rw [associated_iff_eq] at hi
+    rw [associated_iff_eq] at hi 
     exact ⟨⟨i, Nat.lt_succ_of_le i_le⟩, hi⟩
   · rintro ⟨i, rfl⟩
     exact ⟨p ^ (n - i : ℕ), (pow_mul_pow_sub p (nat.succ_le_succ_iff.mp i.2)).symm⟩
@@ -172,7 +172,7 @@ theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (
     have H : r = c 1 ^ i :=
       by
       have := UniqueFactorizationMonoid.normalizedFactors_prod (ne_zero_of_dvd_ne_zero hq hr)
-      rw [associated_iff_eq, hi, Multiset.prod_replicate] at this
+      rw [associated_iff_eq, hi, Multiset.prod_replicate] at this 
       rw [this]
     refine' ⟨⟨i, _⟩, H⟩
     have : (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card = i + 1 :=
@@ -214,10 +214,10 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
     intro r hr
     obtain ⟨j, -, rfl⟩ := Finset.mem_image.1 hr
     have := h₂.2 ⟨j, rfl⟩
-    rw [hi'] at this
+    rw [hi'] at this 
     obtain ⟨u, hu, hu'⟩ := (dvd_prime_pow (show Prime (c 1) from _) i).1 this
     refine' finset.mem_image.mpr ⟨u, Finset.mem_univ _, _⟩
-    · rw [associated_iff_eq] at hu'; rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
+    · rw [associated_iff_eq] at hu' ; rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
     · rw [← irreducible_iff_prime]; exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
 #align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chain
 
@@ -302,11 +302,11 @@ theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associa
     exact (prime_of_normalized_factor 1 hp).not_unit isUnit_one
   · obtain ⟨x, hx⟩ :=
       d.surjective ⟨b, le_trans (le_of_lt hb) (d ⟨p, dvd_of_mem_normalized_factors hp⟩).Prop⟩
-    rw [← Subtype.coe_mk b _, Subtype.coe_lt_coe, ← hx] at hb
+    rw [← Subtype.coe_mk b _, Subtype.coe_lt_coe, ← hx] at hb 
     letI : OrderBot { l : Associates M // l ≤ m } := Subtype.orderBot bot_le
     letI : OrderBot { l : Associates N // l ≤ n } := Subtype.orderBot bot_le
     suffices x = ⊥ by
-      rw [this, OrderIso.map_bot d] at hx
+      rw [this, OrderIso.map_bot d] at hx 
       refine' (Subtype.mk_eq_bot_iff _ _).mp hx.symm
       exact bot_le
     obtain ⟨a, ha⟩ := x
@@ -327,7 +327,7 @@ theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [Decidabl
   obtain ⟨q, hq, hq'⟩ :=
     exists_mem_normalized_factors_of_dvd hn (map_prime_of_factor_orderIso hn hp d).Irreducible
       (d ⟨p, dvd_of_mem_normalized_factors hp⟩).Prop
-  rw [associated_iff_eq] at hq'
+  rw [associated_iff_eq] at hq' 
   rwa [hq']
 #align mem_normalized_factors_factor_order_iso_of_mem_normalized_factors mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors
 
@@ -359,7 +359,7 @@ theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso [DecidableEq
     multiplicity (↑(d ⟨p, dvd_of_mem_normalized_factors hp⟩)) n ≤
       multiplicity (↑(d.symm (d ⟨p, dvd_of_mem_normalized_factors hp⟩))) m
     by
-    rw [d.symm_apply_apply ⟨p, dvd_of_mem_normalized_factors hp⟩, Subtype.coe_mk] at this
+    rw [d.symm_apply_apply ⟨p, dvd_of_mem_normalized_factors hp⟩, Subtype.coe_mk] at this 
     exact this
   letI := Classical.decEq (Associates N)
   simpa only [Subtype.coe_eta] using
@@ -423,7 +423,7 @@ theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [Decidable
             simp [dvd_of_mem_normalized_factors hp]⟩)
     by
     simp only [associatesEquivOfUniqueUnits_apply, out_mk, normalize_eq,
-      associatesEquivOfUniqueUnits_symm_apply] at this
+      associatesEquivOfUniqueUnits_symm_apply] at this 
     obtain ⟨q, hq, hq'⟩ :=
       exists_mem_normalized_factors_of_dvd hn this.irreducible
         (d ⟨p, by apply dvd_of_mem_normalized_factors <;> convert hp⟩).Prop
Diff
@@ -46,12 +46,6 @@ and the set of factors of `a`.
 
 variable {M : Type _} [CancelCommMonoidWithZero M]
 
-/- warning: associates.is_atom_iff -> Associates.isAtom_iff is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Iff (IsAtom.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) (Associates.orderBot.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) p) (Irreducible.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p))
-but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (Iff (IsAtom.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) (Associates.instOrderBotAssociatesToMonoidToLEInstPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) p) (Irreducible.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p))
-Case conversion may be inaccurate. Consider using '#align associates.is_atom_iff Associates.isAtom_iffₓ'. -/
 theorem Associates.isAtom_iff {p : Associates M} (h₁ : p ≠ 0) : IsAtom p ↔ Irreducible p :=
   ⟨fun hp =>
     ⟨by simpa only [Associates.isUnit_iff_eq_one] using hp.1, fun a b h =>
@@ -76,12 +70,6 @@ open UniqueFactorizationMonoid multiplicity Irreducible Associates
 
 namespace DivisorChain
 
-/- warning: divisor_chain.exists_chain_of_prime_pow -> DivisorChain.exists_chain_of_prime_pow is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Exists.{succ u1} ((Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (fun (c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) => And (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) p) (And (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p n)) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))))))
-but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Exists.{succ u1} ((Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (fun (c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) => And (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n)))) p) (And (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p n)) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))))))
-Case conversion may be inaccurate. Consider using '#align divisor_chain.exists_chain_of_prime_pow DivisorChain.exists_chain_of_prime_powₓ'. -/
 theorem exists_chain_of_prime_pow {p : Associates M} {n : ℕ} (hn : n ≠ 0) (hp : Prime p) :
     ∃ c : Fin (n + 1) → Associates M,
       c 1 = p ∧ StrictMono c ∧ ∀ {r : Associates M}, r ≤ p ^ n ↔ ∃ i, r = c i :=
@@ -102,12 +90,6 @@ theorem exists_chain_of_prime_pow {p : Associates M} {n : ℕ} (hn : n ≠ 0) (h
     exact ⟨p ^ (n - i : ℕ), (pow_mul_pow_sub p (nat.succ_le_succ_iff.mp i.2)).symm⟩
 #align divisor_chain.exists_chain_of_prime_pow DivisorChain.exists_chain_of_prime_pow
 
-/- warning: divisor_chain.element_of_chain_not_is_unit_of_index_ne_zero -> DivisorChain.element_of_chain_not_isUnit_of_index_ne_zero is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {n : Nat} {i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))}, (Ne.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) i (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (Not (IsUnit.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c i))))
-but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {n : Nat} {i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))}, (Ne.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) i (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 0 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 0 (NeZero.succ n)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (Not (IsUnit.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c i))))
-Case conversion may be inaccurate. Consider using '#align divisor_chain.element_of_chain_not_is_unit_of_index_ne_zero DivisorChain.element_of_chain_not_isUnit_of_index_ne_zeroₓ'. -/
 theorem element_of_chain_not_isUnit_of_index_ne_zero {n : ℕ} {i : Fin (n + 1)} (i_pos : i ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) : ¬IsUnit (c i) :=
   DvdNotUnit.not_unit
@@ -115,12 +97,6 @@ theorem element_of_chain_not_isUnit_of_index_ne_zero {n : ℕ} {i : Fin (n + 1)}
       (h₁ <| show (0 : Fin (n + 1)) < i from i.pos_iff_ne_zero.mpr i_pos))
 #align divisor_chain.element_of_chain_not_is_unit_of_index_ne_zero DivisorChain.element_of_chain_not_isUnit_of_index_ne_zero
 
-/- warning: divisor_chain.first_of_chain_is_unit -> DivisorChain.first_of_chain_isUnit is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (IsUnit.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))))
-but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (IsUnit.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 0 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 0 (NeZero.succ n)))))
-Case conversion may be inaccurate. Consider using '#align divisor_chain.first_of_chain_is_unit DivisorChain.first_of_chain_isUnitₓ'. -/
 theorem first_of_chain_isUnit {q : Associates M} {n : ℕ} {c : Fin (n + 1) → Associates M}
     (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i) : IsUnit (c 0) :=
   by
@@ -129,12 +105,6 @@ theorem first_of_chain_isUnit {q : Associates M} {n : ℕ} {c : Fin (n + 1) →
   exact h₁.monotone (Fin.zero_le i)
 #align divisor_chain.first_of_chain_is_unit DivisorChain.first_of_chain_isUnit
 
-/- warning: divisor_chain.second_of_chain_is_irreducible -> DivisorChain.second_of_chain_is_irreducible is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Irreducible.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))
-but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (Irreducible.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n))))))
-Case conversion may be inaccurate. Consider using '#align divisor_chain.second_of_chain_is_irreducible DivisorChain.second_of_chain_is_irreducibleₓ'. -/
 /-- The second element of a chain is irreducible. -/
 theorem second_of_chain_is_irreducible {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i)
@@ -148,9 +118,6 @@ theorem second_of_chain_is_irreducible {q : Associates M} {n : ℕ} (hn : n ≠
   · simpa [Fin.lt_iff_val_lt_val] using h₁.lt_iff_lt.mp hb
 #align divisor_chain.second_of_chain_is_irreducible DivisorChain.second_of_chain_is_irreducible
 
-/- warning: divisor_chain.eq_second_of_chain_of_prime_dvd -> DivisorChain.eq_second_of_chain_of_prime_dvd is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align divisor_chain.eq_second_of_chain_of_prime_dvd DivisorChain.eq_second_of_chain_of_prime_dvdₓ'. -/
 theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
     (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hp : Prime p) (hr : r ∣ q) (hp' : p ∣ r) :
@@ -175,12 +142,6 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
     simpa only [Fin.coe_eq_castSucc] using Fin.lt_succ
 #align divisor_chain.eq_second_of_chain_of_prime_dvd DivisorChain.eq_second_of_chain_of_prime_dvd
 
-/- warning: divisor_chain.card_subset_divisors_le_length_of_chain -> DivisorChain.card_subset_divisors_le_length_of_chain is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (forall {m : Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall (r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))), (Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Finset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) r m) -> (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q)) -> (LE.le.{0} Nat Nat.hasLe (Finset.card.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m) (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))))
-but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (forall {m : Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall (r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))), (Membership.mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Finset.instMembershipFinset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) r m) -> (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q)) -> (LE.le.{0} Nat instLENat (Finset.card.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m) (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))
-Case conversion may be inaccurate. Consider using '#align divisor_chain.card_subset_divisors_le_length_of_chain DivisorChain.card_subset_divisors_le_length_of_chainₓ'. -/
 theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
     {c : Fin (n + 1) → Associates M} (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i) {m : Finset (Associates M)}
     (hm : ∀ r, r ∈ m → r ≤ q) : m.card ≤ n + 1 := by
@@ -196,9 +157,6 @@ theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
 
 variable [UniqueFactorizationMonoid M]
 
-/- warning: divisor_chain.element_of_chain_eq_pow_second_of_chain -> DivisorChain.element_of_chain_eq_pow_second_of_chain is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align divisor_chain.element_of_chain_eq_pow_second_of_chain DivisorChain.element_of_chain_eq_pow_second_of_chainₓ'. -/
 theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i)
     (hr : r ∣ q) (hq : q ≠ 0) : ∃ i : Fin (n + 1), r = c 1 ^ (i : ℕ) := by
@@ -238,9 +196,6 @@ theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (
     · exact nat.succ_le_succ_iff.mp a.2
 #align divisor_chain.element_of_chain_eq_pow_second_of_chain DivisorChain.element_of_chain_eq_pow_second_of_chain
 
-/- warning: divisor_chain.eq_pow_second_of_chain_of_has_chain -> DivisorChain.eq_pow_second_of_chain_of_has_chain is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chainₓ'. -/
 theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
     (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hq : q ≠ 0) : q = c 1 ^ n := by
@@ -266,12 +221,6 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
     · rw [← irreducible_iff_prime]; exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
 #align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chain
 
-/- warning: divisor_chain.is_prime_pow_of_has_chain -> DivisorChain.isPrimePow_of_has_chain is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (IsPrimePow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) q))
-but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (IsPrimePow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) q))
-Case conversion may be inaccurate. Consider using '#align divisor_chain.is_prime_pow_of_has_chain DivisorChain.isPrimePow_of_has_chainₓ'. -/
 theorem isPrimePow_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
     (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hq : q ≠ 0) : IsPrimePow q :=
@@ -283,9 +232,6 @@ end DivisorChain
 
 variable {N : Type _} [CancelCommMonoidWithZero N]
 
-/- warning: factor_order_iso_map_one_eq_bot -> factor_orderIso_map_one_eq_bot is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align factor_order_iso_map_one_eq_bot factor_orderIso_map_one_eq_botₓ'. -/
 theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
     (d : { l : Associates M // l ≤ m } ≃o { l : Associates N // l ≤ n }) :
     (d ⟨1, one_dvd m⟩ : Associates N) = 1 :=
@@ -295,9 +241,6 @@ theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
   simp [← Associates.bot_eq_one]
 #align factor_order_iso_map_one_eq_bot factor_orderIso_map_one_eq_bot
 
-/- warning: coe_factor_order_iso_map_eq_one_iff -> coe_factor_orderIso_map_eq_one_iff is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align coe_factor_order_iso_map_eq_one_iff coe_factor_orderIso_map_eq_one_iffₓ'. -/
 theorem coe_factor_orderIso_map_eq_one_iff {m u : Associates M} {n : Associates N} (hu' : u ≤ m)
     (d : Set.Iic m ≃o Set.Iic n) : (d ⟨u, hu'⟩ : Associates N) = 1 ↔ u = 1 :=
   ⟨fun hu =>
@@ -314,9 +257,6 @@ variable [UniqueFactorizationMonoid N] [UniqueFactorizationMonoid M]
 
 open DivisorChain
 
-/- warning: pow_image_of_prime_by_factor_order_iso_dvd -> pow_image_of_prime_by_factor_orderIso_dvd is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align pow_image_of_prime_by_factor_order_iso_dvd pow_image_of_prime_by_factor_orderIso_dvdₓ'. -/
 theorem pow_image_of_prime_by_factor_orderIso_dvd [DecidableEq (Associates M)] {m p : Associates M}
     {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n)
     {s : ℕ} (hs' : p ^ s ≤ m) : (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : Associates N) ^ s ≤ n :=
@@ -350,9 +290,6 @@ theorem pow_image_of_prime_by_factor_orderIso_dvd [DecidableEq (Associates M)] {
   exact ne_zero_of_dvd_ne_zero hn (Subtype.prop (d ⟨c₁ 1 ^ s, _⟩))
 #align pow_image_of_prime_by_factor_order_iso_dvd pow_image_of_prime_by_factor_orderIso_dvd
 
-/- warning: map_prime_of_factor_order_iso -> map_prime_of_factor_orderIso is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align map_prime_of_factor_order_iso map_prime_of_factor_orderIsoₓ'. -/
 theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associates M}
     {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
     Prime (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : Associates N) :=
@@ -382,9 +319,6 @@ theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associa
     exact bot_le
 #align map_prime_of_factor_order_iso map_prime_of_factor_orderIso
 
-/- warning: mem_normalized_factors_factor_order_iso_of_mem_normalized_factors -> mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align mem_normalized_factors_factor_order_iso_of_mem_normalized_factors mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactorsₓ'. -/
 theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [DecidableEq (Associates M)]
     [DecidableEq (Associates N)] {m p : Associates M} {n : Associates N} (hn : n ≠ 0)
     (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
@@ -399,9 +333,6 @@ theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [Decidabl
 
 variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣ ·) : N → N → Prop)]
 
-/- warning: multiplicity_prime_le_multiplicity_image_by_factor_order_iso -> multiplicity_prime_le_multiplicity_image_by_factor_orderIso is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align multiplicity_prime_le_multiplicity_image_by_factor_order_iso multiplicity_prime_le_multiplicity_image_by_factor_orderIsoₓ'. -/
 theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hp : p ∈ normalizedFactors m)
     (d : Set.Iic m ≃o Set.Iic n) :
@@ -418,9 +349,6 @@ theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq
   exact pow_image_of_prime_by_factor_orderIso_dvd hn hp d (pow_multiplicity_dvd _)
 #align multiplicity_prime_le_multiplicity_image_by_factor_order_iso multiplicity_prime_le_multiplicity_image_by_factor_orderIso
 
-/- warning: multiplicity_prime_eq_multiplicity_image_by_factor_order_iso -> multiplicity_prime_eq_multiplicity_image_by_factor_orderIso is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align multiplicity_prime_eq_multiplicity_image_by_factor_order_iso multiplicity_prime_eq_multiplicity_image_by_factor_orderIsoₓ'. -/
 theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
     (d : Set.Iic m ≃o Set.Iic n) :
@@ -482,9 +410,6 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
 
 variable [UniqueFactorizationMonoid M] [UniqueFactorizationMonoid N] [DecidableEq M]
 
-/- warning: mem_normalized_factors_factor_dvd_iso_of_mem_normalized_factors -> mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align mem_normalized_factors_factor_dvd_iso_of_mem_normalized_factors mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactorsₓ'. -/
 theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [DecidableEq N] {m p : M}
     {n : N} (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
     {d : { l : M // l ∣ m } ≃ { l : N // l ∣ n }}
@@ -528,9 +453,6 @@ theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [Decidable
 
 variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣ ·) : N → N → Prop)]
 
-/- warning: multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor -> multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactorsₓ'. -/
 theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m p : M} {n : N}
     (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
     {d : { l : M // l ∣ m } ≃ { l : N // l ∣ n }} (hd : ∀ l l', (d l : N) ∣ d l' ↔ (l : M) ∣ l') :
Diff
@@ -57,8 +57,7 @@ theorem Associates.isAtom_iff {p : Associates M} (h₁ : p ≠ 0) : IsAtom p ↔
     ⟨by simpa only [Associates.isUnit_iff_eq_one] using hp.1, fun a b h =>
       (hp.le_iff.mp ⟨_, h⟩).casesOn (fun ha => Or.inl (a.isUnit_iff_eq_one.mpr ha)) fun ha =>
         Or.inr
-          (show IsUnit b by
-            rw [ha] at h
+          (show IsUnit b by rw [ha] at h;
             apply isUnit_of_associated_mul (show Associated (p * b) p by conv_rhs => rw [h]) h₁)⟩,
     fun hp =>
     ⟨by simpa only [Associates.isUnit_iff_eq_one, Associates.bot_eq_one] using hp.1,
@@ -221,8 +220,7 @@ theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (
     have : (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card = i + 1 :=
       by
       conv_rhs => rw [← Finset.card_fin (i + 1)]
-      cases n
-      · contradiction
+      cases n; · contradiction
       rw [Finset.card_image_iff]
       refine' Set.injOn_of_injective (fun m m' h => Fin.ext _) _
       refine'
@@ -264,10 +262,8 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
     rw [hi'] at this
     obtain ⟨u, hu, hu'⟩ := (dvd_prime_pow (show Prime (c 1) from _) i).1 this
     refine' finset.mem_image.mpr ⟨u, Finset.mem_univ _, _⟩
-    · rw [associated_iff_eq] at hu'
-      rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
-    · rw [← irreducible_iff_prime]
-      exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
+    · rw [associated_iff_eq] at hu'; rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
+    · rw [← irreducible_iff_prime]; exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
 #align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chain
 
 /- warning: divisor_chain.is_prime_pow_of_has_chain -> DivisorChain.isPrimePow_of_has_chain is a dubious translation:
@@ -308,9 +304,7 @@ theorem coe_factor_orderIso_map_eq_one_iff {m u : Associates M} {n : Associates
     by
     rw [show u = ↑(d.symm ⟨↑(d ⟨u, hu'⟩), (d ⟨u, hu'⟩).Prop⟩) by
         simp only [Subtype.coe_eta, OrderIso.symm_apply_apply, Subtype.coe_mk]]
-    convert factor_orderIso_map_one_eq_bot d.symm, fun hu =>
-    by
-    simp_rw [hu]
+    convert factor_orderIso_map_one_eq_bot d.symm, fun hu => by simp_rw [hu];
     convert factor_orderIso_map_one_eq_bot d⟩
 #align coe_factor_order_iso_map_eq_one_iff coe_factor_orderIso_map_eq_one_iff
 
@@ -461,7 +455,7 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
     ⟨Associates.mk
         (d
           ⟨associatesEquivOfUniqueUnits ↑l, by
-            obtain ⟨x, hx⟩ := l
+            obtain ⟨x, hx⟩ := l;
             rw [Subtype.coe_mk, associatesEquivOfUniqueUnits_apply, out_dvd_iff]
             exact hx⟩),
       mk_le_mk_iff_dvd_iff.mpr (Subtype.prop (d ⟨associatesEquivOfUniqueUnits ↑l, _⟩))⟩
@@ -564,9 +558,7 @@ theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m
           ⟨associates_equiv_of_unique_units.symm p, by
             rw [associatesEquivOfUniqueUnits_symm_apply] <;>
               exact mk_le_mk_of_dvd (dvd_of_mem_normalized_factors hp)⟩) :=
-    by
-    rw [mkFactorOrderIsoOfFactorDvdEquiv_apply_coe]
-    rfl
+    by rw [mkFactorOrderIsoOfFactorDvdEquiv_apply_coe]; rfl
   rw [this]
   letI := Classical.decEq (Associates M)
   refine'
Diff
@@ -150,10 +150,7 @@ theorem second_of_chain_is_irreducible {q : Associates M} {n : ℕ} (hn : n ≠
 #align divisor_chain.second_of_chain_is_irreducible DivisorChain.second_of_chain_is_irreducible
 
 /- warning: divisor_chain.eq_second_of_chain_of_prime_dvd -> DivisorChain.eq_second_of_chain_of_prime_dvd is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p r) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))
-but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Dvd.dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Dvd.dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p r) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n))))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align divisor_chain.eq_second_of_chain_of_prime_dvd DivisorChain.eq_second_of_chain_of_prime_dvdₓ'. -/
 theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
@@ -201,10 +198,7 @@ theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
 variable [UniqueFactorizationMonoid M]
 
 /- warning: divisor_chain.element_of_chain_eq_pow_second_of_chain -> DivisorChain.element_of_chain_eq_pow_second_of_chain is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) ((fun (a : Type) (b : Type) [self : HasLiftT.{1, 1} a b] => self.0) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (HasLiftT.mk.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (CoeTCₓ.coe.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (coeBase.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (Fin.coeToNat (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))))) i)))))
-but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Dvd.dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n)))) (Fin.val (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) i)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align divisor_chain.element_of_chain_eq_pow_second_of_chain DivisorChain.element_of_chain_eq_pow_second_of_chainₓ'. -/
 theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i)
@@ -247,10 +241,7 @@ theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (
 #align divisor_chain.element_of_chain_eq_pow_second_of_chain DivisorChain.element_of_chain_eq_pow_second_of_chain
 
 /- warning: divisor_chain.eq_pow_second_of_chain_of_has_chain -> DivisorChain.eq_pow_second_of_chain_of_has_chain is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) n)))
-but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n)))) n)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chainₓ'. -/
 theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
@@ -297,10 +288,7 @@ end DivisorChain
 variable {N : Type _} [CancelCommMonoidWithZero N]
 
 /- warning: factor_order_iso_map_one_eq_bot -> factor_orderIso_map_one_eq_bot is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (d : OrderIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))), Eq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))) (fun (_x : RelIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m))) (LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)))) => (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) -> (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))) (RelIso.hasCoeToFun.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m))) (LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m) (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (One.one.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MulOneClass.toHasOne.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Monoid.toMulOneClass.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) (one_dvd.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m)))) (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (One.one.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasOne.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))
-but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (d : OrderIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n))), Eq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (fun (_x : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m) (OfNat.ofNat.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) 1 (One.toOfNat1.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instOneAssociates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))) (one_dvd.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) m)))) (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 1 (One.toOfNat1.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instOneAssociates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align factor_order_iso_map_one_eq_bot factor_orderIso_map_one_eq_botₓ'. -/
 theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
     (d : { l : Associates M // l ≤ m } ≃o { l : Associates N // l ≤ n }) :
@@ -312,10 +300,7 @@ theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
 #align factor_order_iso_map_one_eq_bot factor_orderIso_map_one_eq_bot
 
 /- warning: coe_factor_order_iso_map_eq_one_iff -> coe_factor_orderIso_map_eq_one_iff is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {u : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (hu' : LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) u m) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Iff (Eq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) u hu'))) (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (One.one.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasOne.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) u (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (One.one.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasOne.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))
-but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {u : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hu' : LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) u m) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Iff (Eq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) u hu'))) (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 1 (One.toOfNat1.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instOneAssociates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) (Eq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) u (OfNat.ofNat.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) 1 (One.toOfNat1.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instOneAssociates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align coe_factor_order_iso_map_eq_one_iff coe_factor_orderIso_map_eq_one_iffₓ'. -/
 theorem coe_factor_orderIso_map_eq_one_iff {m u : Associates M} {n : Associates N} (hu' : u ≤ m)
     (d : Set.Iic m ≃o Set.Iic n) : (d ⟨u, hu'⟩ : Associates N) = 1 ↔ u = 1 :=
@@ -336,10 +321,7 @@ variable [UniqueFactorizationMonoid N] [UniqueFactorizationMonoid M]
 open DivisorChain
 
 /- warning: pow_image_of_prime_by_factor_order_iso_dvd -> pow_image_of_prime_by_factor_orderIso_dvd is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) {s : Nat}, (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p s) m) -> (LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HPow.hPow.{u2, 0, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) Nat (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (instHPow.{u2, 0} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) Nat (Monoid.Pow.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) s) n))
-but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))) {s : Nat}, (LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (HPow.hPow.{u2, 0, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) Nat (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (instHPow.{u2, 0} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) Nat (Monoid.Pow.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))) p s) m) -> (LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (HPow.hPow.{u1, 0, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) Nat (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (instHPow.{u1, 0} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) Nat (Monoid.Pow.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) s) n))
+<too large>
 Case conversion may be inaccurate. Consider using '#align pow_image_of_prime_by_factor_order_iso_dvd pow_image_of_prime_by_factor_orderIso_dvdₓ'. -/
 theorem pow_image_of_prime_by_factor_orderIso_dvd [DecidableEq (Associates M)] {m p : Associates M}
     {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n)
@@ -375,10 +357,7 @@ theorem pow_image_of_prime_by_factor_orderIso_dvd [DecidableEq (Associates M)] {
 #align pow_image_of_prime_by_factor_order_iso_dvd pow_image_of_prime_by_factor_orderIso_dvd
 
 /- warning: map_prime_of_factor_order_iso -> map_prime_of_factor_orderIso is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Prime.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))))
-but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Prime.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align map_prime_of_factor_order_iso map_prime_of_factor_orderIsoₓ'. -/
 theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associates M}
     {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
@@ -410,10 +389,7 @@ theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associa
 #align map_prime_of_factor_order_iso map_prime_of_factor_orderIso
 
 /- warning: mem_normalized_factors_factor_order_iso_of_mem_normalized_factors -> mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_6 : DecidableEq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Multiset.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Multiset.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.cancelCommMonoidWithZero.{u2} N _inst_2) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => _inst_6 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.cancelCommMonoidWithZero.{u2} N _inst_2) (Associates.uniqueUnits.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.ufm.{u2} N _inst_2 _inst_3) n))
-but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] [_inst_6 : DecidableEq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Multiset.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Multiset.instMembershipMultiset.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u1} N _inst_2) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => _inst_6 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u1} N _inst_2) (Associates.uniqueUnits.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.ufm.{u1} N _inst_2 _inst_3) n))
+<too large>
 Case conversion may be inaccurate. Consider using '#align mem_normalized_factors_factor_order_iso_of_mem_normalized_factors mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactorsₓ'. -/
 theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [DecidableEq (Associates M)]
     [DecidableEq (Associates N)] {m p : Associates M} {n : Associates N} (hn : n ≠ 0)
@@ -430,10 +406,7 @@ theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [Decidabl
 variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣ ·) : N → N → Prop)]
 
 /- warning: multiplicity_prime_le_multiplicity_image_by_factor_order_iso -> multiplicity_prime_le_multiplicity_image_by_factor_orderIso is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.hasLe (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n)
-but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4378 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4378 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4402 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4402 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.instLEPartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n)
+<too large>
 Case conversion may be inaccurate. Consider using '#align multiplicity_prime_le_multiplicity_image_by_factor_order_iso multiplicity_prime_le_multiplicity_image_by_factor_orderIsoₓ'. -/
 theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hp : p ∈ normalizedFactors m)
@@ -452,10 +425,7 @@ theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq
 #align multiplicity_prime_le_multiplicity_image_by_factor_order_iso multiplicity_prime_le_multiplicity_image_by_factor_orderIso
 
 /- warning: multiplicity_prime_eq_multiplicity_image_by_factor_order_iso -> multiplicity_prime_eq_multiplicity_image_by_factor_orderIso is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n))
-but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4604 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4604 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4628 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4628 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n))
+<too large>
 Case conversion may be inaccurate. Consider using '#align multiplicity_prime_eq_multiplicity_image_by_factor_order_iso multiplicity_prime_eq_multiplicity_image_by_factor_orderIsoₓ'. -/
 theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
@@ -519,10 +489,7 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
 variable [UniqueFactorizationMonoid M] [UniqueFactorizationMonoid N] [DecidableEq M]
 
 /- warning: mem_normalized_factors_factor_dvd_iso_of_mem_normalized_factors -> mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : Unique.{succ u1} (Units.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_4 : Unique.{succ u2} (Units.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_7 : DecidableEq.{succ u1} M] [_inst_8 : DecidableEq.{succ u2} N] {m : M} {p : M} {n : N}, (Ne.{succ u1} M m (OfNat.ofNat.{u1} M 0 (OfNat.mk.{u1} M 0 (Zero.zero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) -> (Ne.{succ u2} N n (OfNat.ofNat.{u2} N 0 (OfNat.mk.{u2} N 0 (Zero.zero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))))) -> (forall (hp : Membership.Mem.{u1, u1} M (Multiset.{u1} M) (Multiset.hasMem.{u1} M) p (UniqueFactorizationMonoid.normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (l' : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)), Iff (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l'))) (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l'))) -> (Membership.Mem.{u2, u2} N (Multiset.{u2} N) (Multiset.hasMem.{u2} N) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d (Subtype.mk.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} N _inst_2 (fun (a : N) (b : N) => _inst_8 a b) (normalizationMonoidOfUniqueUnits.{u2} N _inst_2 _inst_4) _inst_6 n)))
-but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : Unique.{succ u1} (Units.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_4 : Unique.{succ u2} (Units.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_7 : DecidableEq.{succ u1} M] [_inst_8 : DecidableEq.{succ u2} N] {m : M} {p : M} {n : N}, (Ne.{succ u1} M m (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) -> (Ne.{succ u2} N n (OfNat.ofNat.{u2} N 0 (Zero.toOfNat0.{u2} N (CommMonoidWithZero.toZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) -> (forall (hp : Membership.mem.{u1, u1} M (Multiset.{u1} M) (Multiset.instMembershipMultiset.{u1} M) p (UniqueFactorizationMonoid.normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (l' : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)), Iff (Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l)) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l'))) (Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Subtype.val.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) l) (Subtype.val.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) l'))) -> (Membership.mem.{u2, u2} N (Multiset.{u2} N) (Multiset.instMembershipMultiset.{u2} N) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d (Subtype.mk.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} N _inst_2 (fun (a : N) (b : N) => _inst_8 a b) (normalizationMonoidOfUniqueUnits.{u2} N _inst_2 _inst_4) _inst_6 n)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align mem_normalized_factors_factor_dvd_iso_of_mem_normalized_factors mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactorsₓ'. -/
 theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [DecidableEq N] {m p : M}
     {n : N} (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
@@ -568,10 +535,7 @@ theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [Decidable
 variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣ ·) : N → N → Prop)]
 
 /- warning: multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor -> multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors is a dubious translation:
-lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : Unique.{succ u1} (Units.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_4 : Unique.{succ u2} (Units.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_7 : DecidableEq.{succ u1} M] [_inst_8 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_9 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] {m : M} {p : M} {n : N}, (Ne.{succ u1} M m (OfNat.ofNat.{u1} M 0 (OfNat.mk.{u1} M 0 (Zero.zero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) -> (Ne.{succ u2} N n (OfNat.ofNat.{u2} N 0 (OfNat.mk.{u2} N 0 (Zero.zero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))))) -> (forall (hp : Membership.Mem.{u1, u1} M (Multiset.{u1} M) (Multiset.hasMem.{u1} M) p (UniqueFactorizationMonoid.normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (l' : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)), Iff (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l'))) (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l'))) -> (Eq.{1} PartENat (multiplicity.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) (fun (a : N) (b : N) => _inst_9 a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d (Subtype.mk.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m p hp)))) n) (multiplicity.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) (fun (a : M) (b : M) => _inst_8 a b) p m)))
-but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : Unique.{succ u2} (Units.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] [_inst_4 : Unique.{succ u1} (Units.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_7 : DecidableEq.{succ u2} M] [_inst_8 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5759 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5759 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761)] [_inst_9 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5783 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5783 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785)] {m : M} {p : M} {n : N}, (Ne.{succ u2} M m (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (CommMonoidWithZero.toZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) -> (Ne.{succ u1} N n (OfNat.ofNat.{u1} N 0 (Zero.toOfNat0.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) -> (forall (hp : Membership.mem.{u2, u2} M (Multiset.{u2} M) (Multiset.instMembershipMultiset.{u2} M) p (UniqueFactorizationMonoid.normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (l' : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)), Iff (Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l)) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l'))) (Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l'))) -> (Eq.{1} PartENat (multiplicity.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) (fun (a : N) (b : N) => _inst_9 a b) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d (Subtype.mk.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m p hp)))) n) (multiplicity.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) (fun (a : M) (b : M) => _inst_8 a b) p m)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactorsₓ'. -/
 theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m p : M} {n : N}
     (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
Diff
@@ -300,7 +300,7 @@ variable {N : Type _} [CancelCommMonoidWithZero N]
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (d : OrderIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))), Eq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))) (fun (_x : RelIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m))) (LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)))) => (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) -> (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))) (RelIso.hasCoeToFun.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m))) (LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m) (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (One.one.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MulOneClass.toHasOne.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Monoid.toMulOneClass.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) (one_dvd.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m)))) (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (One.one.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasOne.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))
 but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (d : OrderIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n))), Eq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (fun (_x : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m) (OfNat.ofNat.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) 1 (One.toOfNat1.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instOneAssociates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))) (one_dvd.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) m)))) (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 1 (One.toOfNat1.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instOneAssociates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (d : OrderIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n))), Eq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (fun (_x : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m) (OfNat.ofNat.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) 1 (One.toOfNat1.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instOneAssociates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))) (one_dvd.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) m)))) (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 1 (One.toOfNat1.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instOneAssociates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))
 Case conversion may be inaccurate. Consider using '#align factor_order_iso_map_one_eq_bot factor_orderIso_map_one_eq_botₓ'. -/
 theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
     (d : { l : Associates M // l ≤ m } ≃o { l : Associates N // l ≤ n }) :
@@ -315,7 +315,7 @@ theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {u : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (hu' : LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) u m) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Iff (Eq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) u hu'))) (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (One.one.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasOne.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) u (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (One.one.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasOne.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))
 but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {u : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hu' : LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) u m) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Iff (Eq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) u hu'))) (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 1 (One.toOfNat1.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instOneAssociates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) (Eq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) u (OfNat.ofNat.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) 1 (One.toOfNat1.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instOneAssociates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))))
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {u : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hu' : LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) u m) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Iff (Eq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) u hu'))) (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 1 (One.toOfNat1.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instOneAssociates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) (Eq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) u (OfNat.ofNat.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) 1 (One.toOfNat1.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instOneAssociates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))))
 Case conversion may be inaccurate. Consider using '#align coe_factor_order_iso_map_eq_one_iff coe_factor_orderIso_map_eq_one_iffₓ'. -/
 theorem coe_factor_orderIso_map_eq_one_iff {m u : Associates M} {n : Associates N} (hu' : u ≤ m)
     (d : Set.Iic m ≃o Set.Iic n) : (d ⟨u, hu'⟩ : Associates N) = 1 ↔ u = 1 :=
@@ -339,7 +339,7 @@ open DivisorChain
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) {s : Nat}, (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p s) m) -> (LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HPow.hPow.{u2, 0, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) Nat (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (instHPow.{u2, 0} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) Nat (Monoid.Pow.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) s) n))
 but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))) {s : Nat}, (LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (HPow.hPow.{u2, 0, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) Nat (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (instHPow.{u2, 0} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) Nat (Monoid.Pow.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))) p s) m) -> (LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (HPow.hPow.{u1, 0, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) Nat (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (instHPow.{u1, 0} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) Nat (Monoid.Pow.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) s) n))
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))) {s : Nat}, (LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (HPow.hPow.{u2, 0, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) Nat (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (instHPow.{u2, 0} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) Nat (Monoid.Pow.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))) p s) m) -> (LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (HPow.hPow.{u1, 0, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) Nat (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (instHPow.{u1, 0} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) Nat (Monoid.Pow.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) s) n))
 Case conversion may be inaccurate. Consider using '#align pow_image_of_prime_by_factor_order_iso_dvd pow_image_of_prime_by_factor_orderIso_dvdₓ'. -/
 theorem pow_image_of_prime_by_factor_orderIso_dvd [DecidableEq (Associates M)] {m p : Associates M}
     {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n)
@@ -378,7 +378,7 @@ theorem pow_image_of_prime_by_factor_orderIso_dvd [DecidableEq (Associates M)] {
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Prime.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))))
 but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Prime.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))))
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Prime.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))))
 Case conversion may be inaccurate. Consider using '#align map_prime_of_factor_order_iso map_prime_of_factor_orderIsoₓ'. -/
 theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associates M}
     {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
@@ -413,7 +413,7 @@ theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associa
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_6 : DecidableEq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Multiset.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Multiset.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.cancelCommMonoidWithZero.{u2} N _inst_2) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => _inst_6 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.cancelCommMonoidWithZero.{u2} N _inst_2) (Associates.uniqueUnits.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.ufm.{u2} N _inst_2 _inst_3) n))
 but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] [_inst_6 : DecidableEq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Multiset.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Multiset.instMembershipMultiset.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u1} N _inst_2) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => _inst_6 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u1} N _inst_2) (Associates.uniqueUnits.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.ufm.{u1} N _inst_2 _inst_3) n))
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] [_inst_6 : DecidableEq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Multiset.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Multiset.instMembershipMultiset.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u1} N _inst_2) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => _inst_6 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u1} N _inst_2) (Associates.uniqueUnits.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.ufm.{u1} N _inst_2 _inst_3) n))
 Case conversion may be inaccurate. Consider using '#align mem_normalized_factors_factor_order_iso_of_mem_normalized_factors mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactorsₓ'. -/
 theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [DecidableEq (Associates M)]
     [DecidableEq (Associates N)] {m p : Associates M} {n : Associates N} (hn : n ≠ 0)
@@ -433,7 +433,7 @@ variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.hasLe (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n)
 but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4378 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4378 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4402 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4402 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.instLEPartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n)
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4378 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4378 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4402 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4402 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.instLEPartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n)
 Case conversion may be inaccurate. Consider using '#align multiplicity_prime_le_multiplicity_image_by_factor_order_iso multiplicity_prime_le_multiplicity_image_by_factor_orderIsoₓ'. -/
 theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hp : p ∈ normalizedFactors m)
@@ -455,7 +455,7 @@ theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n))
 but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4604 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4604 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4628 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4628 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n))
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4604 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4604 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4628 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4628 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n))
 Case conversion may be inaccurate. Consider using '#align multiplicity_prime_eq_multiplicity_image_by_factor_order_iso multiplicity_prime_eq_multiplicity_image_by_factor_orderIsoₓ'. -/
 theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
@@ -522,7 +522,7 @@ variable [UniqueFactorizationMonoid M] [UniqueFactorizationMonoid N] [DecidableE
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : Unique.{succ u1} (Units.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_4 : Unique.{succ u2} (Units.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_7 : DecidableEq.{succ u1} M] [_inst_8 : DecidableEq.{succ u2} N] {m : M} {p : M} {n : N}, (Ne.{succ u1} M m (OfNat.ofNat.{u1} M 0 (OfNat.mk.{u1} M 0 (Zero.zero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) -> (Ne.{succ u2} N n (OfNat.ofNat.{u2} N 0 (OfNat.mk.{u2} N 0 (Zero.zero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))))) -> (forall (hp : Membership.Mem.{u1, u1} M (Multiset.{u1} M) (Multiset.hasMem.{u1} M) p (UniqueFactorizationMonoid.normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (l' : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)), Iff (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l'))) (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l'))) -> (Membership.Mem.{u2, u2} N (Multiset.{u2} N) (Multiset.hasMem.{u2} N) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d (Subtype.mk.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} N _inst_2 (fun (a : N) (b : N) => _inst_8 a b) (normalizationMonoidOfUniqueUnits.{u2} N _inst_2 _inst_4) _inst_6 n)))
 but is expected to have type
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : Unique.{succ u1} (Units.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_4 : Unique.{succ u2} (Units.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_7 : DecidableEq.{succ u1} M] [_inst_8 : DecidableEq.{succ u2} N] {m : M} {p : M} {n : N}, (Ne.{succ u1} M m (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) -> (Ne.{succ u2} N n (OfNat.ofNat.{u2} N 0 (Zero.toOfNat0.{u2} N (CommMonoidWithZero.toZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) -> (forall (hp : Membership.mem.{u1, u1} M (Multiset.{u1} M) (Multiset.instMembershipMultiset.{u1} M) p (UniqueFactorizationMonoid.normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (l' : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)), Iff (Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l)) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l'))) (Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Subtype.val.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) l) (Subtype.val.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) l'))) -> (Membership.mem.{u2, u2} N (Multiset.{u2} N) (Multiset.instMembershipMultiset.{u2} N) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d (Subtype.mk.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} N _inst_2 (fun (a : N) (b : N) => _inst_8 a b) (normalizationMonoidOfUniqueUnits.{u2} N _inst_2 _inst_4) _inst_6 n)))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : Unique.{succ u1} (Units.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_4 : Unique.{succ u2} (Units.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_7 : DecidableEq.{succ u1} M] [_inst_8 : DecidableEq.{succ u2} N] {m : M} {p : M} {n : N}, (Ne.{succ u1} M m (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) -> (Ne.{succ u2} N n (OfNat.ofNat.{u2} N 0 (Zero.toOfNat0.{u2} N (CommMonoidWithZero.toZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) -> (forall (hp : Membership.mem.{u1, u1} M (Multiset.{u1} M) (Multiset.instMembershipMultiset.{u1} M) p (UniqueFactorizationMonoid.normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (l' : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)), Iff (Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l)) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l'))) (Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Subtype.val.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) l) (Subtype.val.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) l'))) -> (Membership.mem.{u2, u2} N (Multiset.{u2} N) (Multiset.instMembershipMultiset.{u2} N) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d (Subtype.mk.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} N _inst_2 (fun (a : N) (b : N) => _inst_8 a b) (normalizationMonoidOfUniqueUnits.{u2} N _inst_2 _inst_4) _inst_6 n)))
 Case conversion may be inaccurate. Consider using '#align mem_normalized_factors_factor_dvd_iso_of_mem_normalized_factors mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactorsₓ'. -/
 theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [DecidableEq N] {m p : M}
     {n : N} (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
@@ -571,7 +571,7 @@ variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : Unique.{succ u1} (Units.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_4 : Unique.{succ u2} (Units.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_7 : DecidableEq.{succ u1} M] [_inst_8 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_9 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] {m : M} {p : M} {n : N}, (Ne.{succ u1} M m (OfNat.ofNat.{u1} M 0 (OfNat.mk.{u1} M 0 (Zero.zero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) -> (Ne.{succ u2} N n (OfNat.ofNat.{u2} N 0 (OfNat.mk.{u2} N 0 (Zero.zero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))))) -> (forall (hp : Membership.Mem.{u1, u1} M (Multiset.{u1} M) (Multiset.hasMem.{u1} M) p (UniqueFactorizationMonoid.normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (l' : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)), Iff (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l'))) (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l'))) -> (Eq.{1} PartENat (multiplicity.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) (fun (a : N) (b : N) => _inst_9 a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d (Subtype.mk.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m p hp)))) n) (multiplicity.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) (fun (a : M) (b : M) => _inst_8 a b) p m)))
 but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : Unique.{succ u2} (Units.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] [_inst_4 : Unique.{succ u1} (Units.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_7 : DecidableEq.{succ u2} M] [_inst_8 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5759 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5759 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761)] [_inst_9 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5783 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5783 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785)] {m : M} {p : M} {n : N}, (Ne.{succ u2} M m (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (CommMonoidWithZero.toZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) -> (Ne.{succ u1} N n (OfNat.ofNat.{u1} N 0 (Zero.toOfNat0.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) -> (forall (hp : Membership.mem.{u2, u2} M (Multiset.{u2} M) (Multiset.instMembershipMultiset.{u2} M) p (UniqueFactorizationMonoid.normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (l' : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)), Iff (Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l)) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l'))) (Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l'))) -> (Eq.{1} PartENat (multiplicity.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) (fun (a : N) (b : N) => _inst_9 a b) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d (Subtype.mk.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m p hp)))) n) (multiplicity.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) (fun (a : M) (b : M) => _inst_8 a b) p m)))
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : Unique.{succ u2} (Units.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] [_inst_4 : Unique.{succ u1} (Units.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_7 : DecidableEq.{succ u2} M] [_inst_8 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5759 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5759 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761)] [_inst_9 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5783 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5783 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785)] {m : M} {p : M} {n : N}, (Ne.{succ u2} M m (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (CommMonoidWithZero.toZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) -> (Ne.{succ u1} N n (OfNat.ofNat.{u1} N 0 (Zero.toOfNat0.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) -> (forall (hp : Membership.mem.{u2, u2} M (Multiset.{u2} M) (Multiset.instMembershipMultiset.{u2} M) p (UniqueFactorizationMonoid.normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (l' : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)), Iff (Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l)) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l'))) (Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l'))) -> (Eq.{1} PartENat (multiplicity.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) (fun (a : N) (b : N) => _inst_9 a b) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d (Subtype.mk.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m p hp)))) n) (multiplicity.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) (fun (a : M) (b : M) => _inst_8 a b) p m)))
 Case conversion may be inaccurate. Consider using '#align multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactorsₓ'. -/
 theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m p : M} {n : N}
     (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
Diff
@@ -79,7 +79,7 @@ namespace DivisorChain
 
 /- warning: divisor_chain.exists_chain_of_prime_pow -> DivisorChain.exists_chain_of_prime_pow is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Exists.{succ u1} ((Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (fun (c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) => And (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) p) (And (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p n)) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))))))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Exists.{succ u1} ((Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (fun (c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) => And (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) p) (And (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p n)) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))))))
 but is expected to have type
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Exists.{succ u1} ((Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (fun (c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) => And (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n)))) p) (And (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p n)) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))))))
 Case conversion may be inaccurate. Consider using '#align divisor_chain.exists_chain_of_prime_pow DivisorChain.exists_chain_of_prime_powₓ'. -/
@@ -118,7 +118,7 @@ theorem element_of_chain_not_isUnit_of_index_ne_zero {n : ℕ} {i : Fin (n + 1)}
 
 /- warning: divisor_chain.first_of_chain_is_unit -> DivisorChain.first_of_chain_isUnit is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (IsUnit.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (IsUnit.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))))
 but is expected to have type
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (IsUnit.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 0 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 0 (NeZero.succ n)))))
 Case conversion may be inaccurate. Consider using '#align divisor_chain.first_of_chain_is_unit DivisorChain.first_of_chain_isUnitₓ'. -/
@@ -132,7 +132,7 @@ theorem first_of_chain_isUnit {q : Associates M} {n : ℕ} {c : Fin (n + 1) →
 
 /- warning: divisor_chain.second_of_chain_is_irreducible -> DivisorChain.second_of_chain_is_irreducible is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Irreducible.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Irreducible.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))
 but is expected to have type
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (Irreducible.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n))))))
 Case conversion may be inaccurate. Consider using '#align divisor_chain.second_of_chain_is_irreducible DivisorChain.second_of_chain_is_irreducibleₓ'. -/
@@ -151,7 +151,7 @@ theorem second_of_chain_is_irreducible {q : Associates M} {n : ℕ} (hn : n ≠
 
 /- warning: divisor_chain.eq_second_of_chain_of_prime_dvd -> DivisorChain.eq_second_of_chain_of_prime_dvd is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p r) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p r) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))
 but is expected to have type
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Dvd.dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Dvd.dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p r) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n))))))
 Case conversion may be inaccurate. Consider using '#align divisor_chain.eq_second_of_chain_of_prime_dvd DivisorChain.eq_second_of_chain_of_prime_dvdₓ'. -/
@@ -181,7 +181,7 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
 
 /- warning: divisor_chain.card_subset_divisors_le_length_of_chain -> DivisorChain.card_subset_divisors_le_length_of_chain is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (forall {m : Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall (r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))), (Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Finset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) r m) -> (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q)) -> (LE.le.{0} Nat Nat.hasLe (Finset.card.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m) (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (forall {m : Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall (r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))), (Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Finset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) r m) -> (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q)) -> (LE.le.{0} Nat Nat.hasLe (Finset.card.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m) (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))))
 but is expected to have type
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (forall {m : Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall (r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))), (Membership.mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Finset.instMembershipFinset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) r m) -> (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q)) -> (LE.le.{0} Nat instLENat (Finset.card.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m) (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))
 Case conversion may be inaccurate. Consider using '#align divisor_chain.card_subset_divisors_le_length_of_chain DivisorChain.card_subset_divisors_le_length_of_chainₓ'. -/
@@ -202,7 +202,7 @@ variable [UniqueFactorizationMonoid M]
 
 /- warning: divisor_chain.element_of_chain_eq_pow_second_of_chain -> DivisorChain.element_of_chain_eq_pow_second_of_chain is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) ((fun (a : Type) (b : Type) [self : HasLiftT.{1, 1} a b] => self.0) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (HasLiftT.mk.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (CoeTCₓ.coe.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (coeBase.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (Fin.coeToNat (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))))) i)))))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) ((fun (a : Type) (b : Type) [self : HasLiftT.{1, 1} a b] => self.0) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (HasLiftT.mk.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (CoeTCₓ.coe.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (coeBase.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (Fin.coeToNat (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))))) i)))))
 but is expected to have type
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Dvd.dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n)))) (Fin.val (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) i)))))
 Case conversion may be inaccurate. Consider using '#align divisor_chain.element_of_chain_eq_pow_second_of_chain DivisorChain.element_of_chain_eq_pow_second_of_chainₓ'. -/
@@ -248,7 +248,7 @@ theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (
 
 /- warning: divisor_chain.eq_pow_second_of_chain_of_has_chain -> DivisorChain.eq_pow_second_of_chain_of_has_chain is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) n)))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) n)))
 but is expected to have type
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n)))) n)))
 Case conversion may be inaccurate. Consider using '#align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chainₓ'. -/
@@ -281,7 +281,7 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
 
 /- warning: divisor_chain.is_prime_pow_of_has_chain -> DivisorChain.isPrimePow_of_has_chain is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (IsPrimePow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) q))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (IsPrimePow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) q))
 but is expected to have type
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (IsPrimePow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) q))
 Case conversion may be inaccurate. Consider using '#align divisor_chain.is_prime_pow_of_has_chain DivisorChain.isPrimePow_of_has_chainₓ'. -/
@@ -298,7 +298,7 @@ variable {N : Type _} [CancelCommMonoidWithZero N]
 
 /- warning: factor_order_iso_map_one_eq_bot -> factor_orderIso_map_one_eq_bot is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (d : OrderIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))), Eq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))) (fun (_x : RelIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m))) (LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)))) => (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) -> (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))) (RelIso.hasCoeToFun.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m))) (LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m) (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (One.one.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MulOneClass.toHasOne.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Monoid.toMulOneClass.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) (one_dvd.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m)))) (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (One.one.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasOne.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (d : OrderIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))), Eq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))) (fun (_x : RelIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m))) (LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)))) => (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) -> (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))) (RelIso.hasCoeToFun.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m))) (LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m) (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (One.one.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MulOneClass.toHasOne.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Monoid.toMulOneClass.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) (one_dvd.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m)))) (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (One.one.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasOne.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))
 but is expected to have type
   forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (d : OrderIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n))), Eq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (fun (_x : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m) (OfNat.ofNat.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) 1 (One.toOfNat1.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instOneAssociates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))) (one_dvd.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) m)))) (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 1 (One.toOfNat1.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instOneAssociates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))
 Case conversion may be inaccurate. Consider using '#align factor_order_iso_map_one_eq_bot factor_orderIso_map_one_eq_botₓ'. -/
@@ -313,7 +313,7 @@ theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
 
 /- warning: coe_factor_order_iso_map_eq_one_iff -> coe_factor_orderIso_map_eq_one_iff is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {u : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (hu' : LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) u m) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Iff (Eq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) u hu'))) (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (One.one.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasOne.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) u (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (One.one.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasOne.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {u : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (hu' : LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) u m) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Iff (Eq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) u hu'))) (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (One.one.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasOne.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) u (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (One.one.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasOne.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))
 but is expected to have type
   forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {u : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hu' : LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) u m) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Iff (Eq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) u hu'))) (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 1 (One.toOfNat1.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instOneAssociates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) (Eq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) u (OfNat.ofNat.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) 1 (One.toOfNat1.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instOneAssociates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))))
 Case conversion may be inaccurate. Consider using '#align coe_factor_order_iso_map_eq_one_iff coe_factor_orderIso_map_eq_one_iffₓ'. -/
@@ -337,7 +337,7 @@ open DivisorChain
 
 /- warning: pow_image_of_prime_by_factor_order_iso_dvd -> pow_image_of_prime_by_factor_orderIso_dvd is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) {s : Nat}, (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p s) m) -> (LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HPow.hPow.{u2, 0, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) Nat (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (instHPow.{u2, 0} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) Nat (Monoid.Pow.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) s) n))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) {s : Nat}, (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p s) m) -> (LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HPow.hPow.{u2, 0, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) Nat (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (instHPow.{u2, 0} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) Nat (Monoid.Pow.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) s) n))
 but is expected to have type
   forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))) {s : Nat}, (LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (HPow.hPow.{u2, 0, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) Nat (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (instHPow.{u2, 0} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) Nat (Monoid.Pow.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))) p s) m) -> (LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (HPow.hPow.{u1, 0, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) Nat (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (instHPow.{u1, 0} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) Nat (Monoid.Pow.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) s) n))
 Case conversion may be inaccurate. Consider using '#align pow_image_of_prime_by_factor_order_iso_dvd pow_image_of_prime_by_factor_orderIso_dvdₓ'. -/
@@ -376,7 +376,7 @@ theorem pow_image_of_prime_by_factor_orderIso_dvd [DecidableEq (Associates M)] {
 
 /- warning: map_prime_of_factor_order_iso -> map_prime_of_factor_orderIso is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Prime.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Prime.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))))
 but is expected to have type
   forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Prime.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))))
 Case conversion may be inaccurate. Consider using '#align map_prime_of_factor_order_iso map_prime_of_factor_orderIsoₓ'. -/
@@ -411,7 +411,7 @@ theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associa
 
 /- warning: mem_normalized_factors_factor_order_iso_of_mem_normalized_factors -> mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_6 : DecidableEq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Multiset.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Multiset.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.cancelCommMonoidWithZero.{u2} N _inst_2) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => _inst_6 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.cancelCommMonoidWithZero.{u2} N _inst_2) (Associates.uniqueUnits.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.ufm.{u2} N _inst_2 _inst_3) n))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_6 : DecidableEq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Multiset.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Multiset.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.cancelCommMonoidWithZero.{u2} N _inst_2) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => _inst_6 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.cancelCommMonoidWithZero.{u2} N _inst_2) (Associates.uniqueUnits.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.ufm.{u2} N _inst_2 _inst_3) n))
 but is expected to have type
   forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] [_inst_6 : DecidableEq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Multiset.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Multiset.instMembershipMultiset.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u1} N _inst_2) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => _inst_6 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u1} N _inst_2) (Associates.uniqueUnits.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.ufm.{u1} N _inst_2 _inst_3) n))
 Case conversion may be inaccurate. Consider using '#align mem_normalized_factors_factor_order_iso_of_mem_normalized_factors mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactorsₓ'. -/
@@ -431,7 +431,7 @@ variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣
 
 /- warning: multiplicity_prime_le_multiplicity_image_by_factor_order_iso -> multiplicity_prime_le_multiplicity_image_by_factor_orderIso is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.hasLe (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n)
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.hasLe (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n)
 but is expected to have type
   forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4378 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4378 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4402 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4402 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.instLEPartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n)
 Case conversion may be inaccurate. Consider using '#align multiplicity_prime_le_multiplicity_image_by_factor_order_iso multiplicity_prime_le_multiplicity_image_by_factor_orderIsoₓ'. -/
@@ -453,7 +453,7 @@ theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq
 
 /- warning: multiplicity_prime_eq_multiplicity_image_by_factor_order_iso -> multiplicity_prime_eq_multiplicity_image_by_factor_orderIso is a dubious translation:
 lean 3 declaration is
-  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n))
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toHasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toHasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n))
 but is expected to have type
   forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4604 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4604 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4628 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4628 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n))
 Case conversion may be inaccurate. Consider using '#align multiplicity_prime_eq_multiplicity_image_by_factor_order_iso multiplicity_prime_eq_multiplicity_image_by_factor_orderIsoₓ'. -/
Diff
@@ -433,7 +433,7 @@ variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.hasLe (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n)
 but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4382 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4382)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4406 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4406)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.instLEPartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n)
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4378 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4378 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4402 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4402 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.instLEPartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n)
 Case conversion may be inaccurate. Consider using '#align multiplicity_prime_le_multiplicity_image_by_factor_order_iso multiplicity_prime_le_multiplicity_image_by_factor_orderIsoₓ'. -/
 theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hp : p ∈ normalizedFactors m)
@@ -455,7 +455,7 @@ theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n))
 but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4608 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4608)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4632 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4632)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n))
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4604 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4604 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4628 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4628 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n))
 Case conversion may be inaccurate. Consider using '#align multiplicity_prime_eq_multiplicity_image_by_factor_order_iso multiplicity_prime_eq_multiplicity_image_by_factor_orderIsoₓ'. -/
 theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
@@ -571,7 +571,7 @@ variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣
 lean 3 declaration is
   forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : Unique.{succ u1} (Units.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_4 : Unique.{succ u2} (Units.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_7 : DecidableEq.{succ u1} M] [_inst_8 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_9 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] {m : M} {p : M} {n : N}, (Ne.{succ u1} M m (OfNat.ofNat.{u1} M 0 (OfNat.mk.{u1} M 0 (Zero.zero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) -> (Ne.{succ u2} N n (OfNat.ofNat.{u2} N 0 (OfNat.mk.{u2} N 0 (Zero.zero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))))) -> (forall (hp : Membership.Mem.{u1, u1} M (Multiset.{u1} M) (Multiset.hasMem.{u1} M) p (UniqueFactorizationMonoid.normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (l' : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)), Iff (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l'))) (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l'))) -> (Eq.{1} PartENat (multiplicity.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) (fun (a : N) (b : N) => _inst_9 a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d (Subtype.mk.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m p hp)))) n) (multiplicity.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) (fun (a : M) (b : M) => _inst_8 a b) p m)))
 but is expected to have type
-  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : Unique.{succ u2} (Units.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] [_inst_4 : Unique.{succ u1} (Units.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_7 : DecidableEq.{succ u2} M] [_inst_8 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5763 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5763)] [_inst_9 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5787 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5787)] {m : M} {p : M} {n : N}, (Ne.{succ u2} M m (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (CommMonoidWithZero.toZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) -> (Ne.{succ u1} N n (OfNat.ofNat.{u1} N 0 (Zero.toOfNat0.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) -> (forall (hp : Membership.mem.{u2, u2} M (Multiset.{u2} M) (Multiset.instMembershipMultiset.{u2} M) p (UniqueFactorizationMonoid.normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (l' : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)), Iff (Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l)) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l'))) (Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l'))) -> (Eq.{1} PartENat (multiplicity.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) (fun (a : N) (b : N) => _inst_9 a b) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d (Subtype.mk.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m p hp)))) n) (multiplicity.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) (fun (a : M) (b : M) => _inst_8 a b) p m)))
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : Unique.{succ u2} (Units.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] [_inst_4 : Unique.{succ u1} (Units.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_7 : DecidableEq.{succ u2} M] [_inst_8 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5759 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5759 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761)] [_inst_9 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5783 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5783 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785)] {m : M} {p : M} {n : N}, (Ne.{succ u2} M m (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (CommMonoidWithZero.toZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) -> (Ne.{succ u1} N n (OfNat.ofNat.{u1} N 0 (Zero.toOfNat0.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) -> (forall (hp : Membership.mem.{u2, u2} M (Multiset.{u2} M) (Multiset.instMembershipMultiset.{u2} M) p (UniqueFactorizationMonoid.normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (l' : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)), Iff (Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l)) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l'))) (Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l'))) -> (Eq.{1} PartENat (multiplicity.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) (fun (a : N) (b : N) => _inst_9 a b) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d (Subtype.mk.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m p hp)))) n) (multiplicity.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) (fun (a : M) (b : M) => _inst_8 a b) p m)))
 Case conversion may be inaccurate. Consider using '#align multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactorsₓ'. -/
 theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m p : M} {n : N}
     (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Anne Baanen, Paul Lezeau
 
 ! This file was ported from Lean 3 source module ring_theory.chain_of_divisors
-! leanprover-community/mathlib commit f694c7dead66f5d4c80f446c796a5aad14707f0e
+! leanprover-community/mathlib commit 86d1873c01a723aba6788f0b9051ae3d23b4c1c3
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -17,6 +17,9 @@ import Mathbin.Algebra.GcdMonoid.Basic
 
 # Chains of divisors
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 The results in this file show that in the monoid `associates M` of a `unique_factorization_monoid`
 `M`, an element `a` is an n-th prime power iff its set of divisors is a strictly increasing chain
 of length `n + 1`, meaning that we can find a strictly increasing bijection between `fin (n + 1)`
Diff
@@ -43,6 +43,12 @@ and the set of factors of `a`.
 
 variable {M : Type _} [CancelCommMonoidWithZero M]
 
+/- warning: associates.is_atom_iff -> Associates.isAtom_iff is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Iff (IsAtom.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) (Associates.orderBot.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) p) (Irreducible.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p))
+but is expected to have type
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (Iff (IsAtom.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) (Associates.instOrderBotAssociatesToMonoidToLEInstPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) p) (Irreducible.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p))
+Case conversion may be inaccurate. Consider using '#align associates.is_atom_iff Associates.isAtom_iffₓ'. -/
 theorem Associates.isAtom_iff {p : Associates M} (h₁ : p ≠ 0) : IsAtom p ↔ Irreducible p :=
   ⟨fun hp =>
     ⟨by simpa only [Associates.isUnit_iff_eq_one] using hp.1, fun a b h =>
@@ -68,6 +74,12 @@ open UniqueFactorizationMonoid multiplicity Irreducible Associates
 
 namespace DivisorChain
 
+/- warning: divisor_chain.exists_chain_of_prime_pow -> DivisorChain.exists_chain_of_prime_pow is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Exists.{succ u1} ((Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (fun (c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) => And (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) p) (And (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p n)) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))))))
+but is expected to have type
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Exists.{succ u1} ((Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (fun (c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) => And (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n)))) p) (And (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p n)) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))))))
+Case conversion may be inaccurate. Consider using '#align divisor_chain.exists_chain_of_prime_pow DivisorChain.exists_chain_of_prime_powₓ'. -/
 theorem exists_chain_of_prime_pow {p : Associates M} {n : ℕ} (hn : n ≠ 0) (hp : Prime p) :
     ∃ c : Fin (n + 1) → Associates M,
       c 1 = p ∧ StrictMono c ∧ ∀ {r : Associates M}, r ≤ p ^ n ↔ ∃ i, r = c i :=
@@ -88,6 +100,12 @@ theorem exists_chain_of_prime_pow {p : Associates M} {n : ℕ} (hn : n ≠ 0) (h
     exact ⟨p ^ (n - i : ℕ), (pow_mul_pow_sub p (nat.succ_le_succ_iff.mp i.2)).symm⟩
 #align divisor_chain.exists_chain_of_prime_pow DivisorChain.exists_chain_of_prime_pow
 
+/- warning: divisor_chain.element_of_chain_not_is_unit_of_index_ne_zero -> DivisorChain.element_of_chain_not_isUnit_of_index_ne_zero is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {n : Nat} {i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))}, (Ne.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) i (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (Not (IsUnit.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c i))))
+but is expected to have type
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {n : Nat} {i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))}, (Ne.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) i (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 0 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 0 (NeZero.succ n)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (Not (IsUnit.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c i))))
+Case conversion may be inaccurate. Consider using '#align divisor_chain.element_of_chain_not_is_unit_of_index_ne_zero DivisorChain.element_of_chain_not_isUnit_of_index_ne_zeroₓ'. -/
 theorem element_of_chain_not_isUnit_of_index_ne_zero {n : ℕ} {i : Fin (n + 1)} (i_pos : i ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) : ¬IsUnit (c i) :=
   DvdNotUnit.not_unit
@@ -95,6 +113,12 @@ theorem element_of_chain_not_isUnit_of_index_ne_zero {n : ℕ} {i : Fin (n + 1)}
       (h₁ <| show (0 : Fin (n + 1)) < i from i.pos_iff_ne_zero.mpr i_pos))
 #align divisor_chain.element_of_chain_not_is_unit_of_index_ne_zero DivisorChain.element_of_chain_not_isUnit_of_index_ne_zero
 
+/- warning: divisor_chain.first_of_chain_is_unit -> DivisorChain.first_of_chain_isUnit is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (IsUnit.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))))
+but is expected to have type
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (IsUnit.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 0 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 0 (NeZero.succ n)))))
+Case conversion may be inaccurate. Consider using '#align divisor_chain.first_of_chain_is_unit DivisorChain.first_of_chain_isUnitₓ'. -/
 theorem first_of_chain_isUnit {q : Associates M} {n : ℕ} {c : Fin (n + 1) → Associates M}
     (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i) : IsUnit (c 0) :=
   by
@@ -103,6 +127,12 @@ theorem first_of_chain_isUnit {q : Associates M} {n : ℕ} {c : Fin (n + 1) →
   exact h₁.monotone (Fin.zero_le i)
 #align divisor_chain.first_of_chain_is_unit DivisorChain.first_of_chain_isUnit
 
+/- warning: divisor_chain.second_of_chain_is_irreducible -> DivisorChain.second_of_chain_is_irreducible is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Irreducible.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))
+but is expected to have type
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (Irreducible.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n))))))
+Case conversion may be inaccurate. Consider using '#align divisor_chain.second_of_chain_is_irreducible DivisorChain.second_of_chain_is_irreducibleₓ'. -/
 /-- The second element of a chain is irreducible. -/
 theorem second_of_chain_is_irreducible {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i)
@@ -116,6 +146,12 @@ theorem second_of_chain_is_irreducible {q : Associates M} {n : ℕ} (hn : n ≠
   · simpa [Fin.lt_iff_val_lt_val] using h₁.lt_iff_lt.mp hb
 #align divisor_chain.second_of_chain_is_irreducible DivisorChain.second_of_chain_is_irreducible
 
+/- warning: divisor_chain.eq_second_of_chain_of_prime_dvd -> DivisorChain.eq_second_of_chain_of_prime_dvd is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p r) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))
+but is expected to have type
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Prime.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) p) -> (Dvd.dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Dvd.dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p r) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) p (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n))))))
+Case conversion may be inaccurate. Consider using '#align divisor_chain.eq_second_of_chain_of_prime_dvd DivisorChain.eq_second_of_chain_of_prime_dvdₓ'. -/
 theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
     (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hp : Prime p) (hr : r ∣ q) (hp' : p ∣ r) :
@@ -140,6 +176,12 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
     simpa only [Fin.coe_eq_castSucc] using Fin.lt_succ
 #align divisor_chain.eq_second_of_chain_of_prime_dvd DivisorChain.eq_second_of_chain_of_prime_dvd
 
+/- warning: divisor_chain.card_subset_divisors_le_length_of_chain -> DivisorChain.card_subset_divisors_le_length_of_chain is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (forall {m : Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall (r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))), (Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Finset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) r m) -> (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q)) -> (LE.le.{0} Nat Nat.hasLe (Finset.card.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m) (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))))
+but is expected to have type
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat} {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (forall {m : Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (forall (r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))), (Membership.mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Finset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Finset.instMembershipFinset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) r m) -> (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q)) -> (LE.le.{0} Nat instLENat (Finset.card.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m) (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))
+Case conversion may be inaccurate. Consider using '#align divisor_chain.card_subset_divisors_le_length_of_chain DivisorChain.card_subset_divisors_le_length_of_chainₓ'. -/
 theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
     {c : Fin (n + 1) → Associates M} (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i) {m : Finset (Associates M)}
     (hm : ∀ r, r ∈ m → r ≤ q) : m.card ≤ n + 1 := by
@@ -155,6 +197,12 @@ theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
 
 variable [UniqueFactorizationMonoid M]
 
+/- warning: divisor_chain.element_of_chain_eq_pow_second_of_chain -> DivisorChain.element_of_chain_eq_pow_second_of_chain is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Dvd.Dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) ((fun (a : Type) (b : Type) [self : HasLiftT.{1, 1} a b] => self.0) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (HasLiftT.mk.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (CoeTCₓ.coe.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (coeBase.{1, 1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) Nat (Fin.coeToNat (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))))) i)))))
+but is expected to have type
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Dvd.dvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (semigroupDvd.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (SemigroupWithZero.toSemigroup.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toSemigroupWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) r q) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n)))) (Fin.val (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) i)))))
+Case conversion may be inaccurate. Consider using '#align divisor_chain.element_of_chain_eq_pow_second_of_chain DivisorChain.element_of_chain_eq_pow_second_of_chainₓ'. -/
 theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i)
     (hr : r ∣ q) (hq : q ≠ 0) : ∃ i : Fin (n + 1), r = c 1 ^ (i : ℕ) := by
@@ -195,6 +243,12 @@ theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (
     · exact nat.succ_le_succ_iff.mp a.2
 #align divisor_chain.element_of_chain_eq_pow_second_of_chain DivisorChain.element_of_chain_eq_pow_second_of_chain
 
+/- warning: divisor_chain.eq_pow_second_of_chain_of_has_chain -> DivisorChain.eq_pow_second_of_chain_of_has_chain is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) n)))
+but is expected to have type
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) (c (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) 1 (Fin.instOfNatFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))) 1 (NeZero.succ n)))) n)))
+Case conversion may be inaccurate. Consider using '#align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chainₓ'. -/
 theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
     (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hq : q ≠ 0) : q = c 1 ^ n := by
@@ -222,6 +276,12 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
       exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
 #align divisor_chain.eq_pow_second_of_chain_of_has_chain DivisorChain.eq_pow_second_of_chain_of_has_chain
 
+/- warning: divisor_chain.is_prime_pow_of_has_chain -> DivisorChain.isPrimePow_of_has_chain is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Fin.partialOrder (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne)))))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.zero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasZero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))))) -> (IsPrimePow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) q))
+but is expected to have type
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] [_inst_2 : UniqueFactorizationMonoid.{u1} M _inst_1] {q : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Nat}, (Ne.{1} Nat n (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall {c : (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) -> (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))}, (StrictMono.{0, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (PartialOrder.toPreorder.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Fin.instPartialOrderFin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1))))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) c) -> (forall {r : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))}, Iff (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r q) (Exists.{1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (i : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) r (c i)))) -> (Ne.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) q (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instZeroAssociates.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))) -> (IsPrimePow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)) q))
+Case conversion may be inaccurate. Consider using '#align divisor_chain.is_prime_pow_of_has_chain DivisorChain.isPrimePow_of_has_chainₓ'. -/
 theorem isPrimePow_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c)
     (h₂ : ∀ {r : Associates M}, r ≤ q ↔ ∃ i, r = c i) (hq : q ≠ 0) : IsPrimePow q :=
@@ -233,6 +293,12 @@ end DivisorChain
 
 variable {N : Type _} [CancelCommMonoidWithZero N]
 
+/- warning: factor_order_iso_map_one_eq_bot -> factor_orderIso_map_one_eq_bot is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (d : OrderIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))), Eq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))) (fun (_x : RelIso.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m))) (LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)))) => (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) -> (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n))) (RelIso.hasCoeToFun.{u1, u2} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m))) (LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (l : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) l n)))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (l : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) l m) (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (One.one.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MulOneClass.toHasOne.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Monoid.toMulOneClass.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) (one_dvd.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) m)))) (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (One.one.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasOne.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))
+but is expected to have type
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (d : OrderIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n))), Eq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (fun (_x : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) => LE.le.{u2} (Subtype.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m)) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) => LE.le.{u1} (Subtype.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (l : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) l n)) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (l : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) l m) (OfNat.ofNat.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) 1 (One.toOfNat1.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instOneAssociates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))) (one_dvd.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) m)))) (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 1 (One.toOfNat1.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instOneAssociates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))
+Case conversion may be inaccurate. Consider using '#align factor_order_iso_map_one_eq_bot factor_orderIso_map_one_eq_botₓ'. -/
 theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
     (d : { l : Associates M // l ≤ m } ≃o { l : Associates N // l ≤ n }) :
     (d ⟨1, one_dvd m⟩ : Associates N) = 1 :=
@@ -242,6 +308,12 @@ theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
   simp [← Associates.bot_eq_one]
 #align factor_order_iso_map_one_eq_bot factor_orderIso_map_one_eq_bot
 
+/- warning: coe_factor_order_iso_map_eq_one_iff -> coe_factor_orderIso_map_eq_one_iff is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {u : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (hu' : LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) u m) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Iff (Eq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) u hu'))) (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 1 (One.one.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasOne.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) (Eq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) u (OfNat.ofNat.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (OfNat.mk.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) 1 (One.one.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.hasOne.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))
+but is expected to have type
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {u : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hu' : LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) u m) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Iff (Eq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) u hu'))) (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 1 (One.toOfNat1.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instOneAssociates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) (Eq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) u (OfNat.ofNat.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) 1 (One.toOfNat1.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instOneAssociates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))))
+Case conversion may be inaccurate. Consider using '#align coe_factor_order_iso_map_eq_one_iff coe_factor_orderIso_map_eq_one_iffₓ'. -/
 theorem coe_factor_orderIso_map_eq_one_iff {m u : Associates M} {n : Associates N} (hu' : u ≤ m)
     (d : Set.Iic m ≃o Set.Iic n) : (d ⟨u, hu'⟩ : Associates N) = 1 ↔ u = 1 :=
   ⟨fun hu =>
@@ -260,6 +332,12 @@ variable [UniqueFactorizationMonoid N] [UniqueFactorizationMonoid M]
 
 open DivisorChain
 
+/- warning: pow_image_of_prime_by_factor_order_iso_dvd -> pow_image_of_prime_by_factor_orderIso_dvd is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) {s : Nat}, (LE.le.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (HPow.hPow.{u1, 0, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (instHPow.{u1, 0} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) Nat (Monoid.Pow.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))))) p s) m) -> (LE.le.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HPow.hPow.{u2, 0, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) Nat (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (instHPow.{u2, 0} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) Nat (Monoid.Pow.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) s) n))
+but is expected to have type
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))) {s : Nat}, (LE.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (HPow.hPow.{u2, 0, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) Nat (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (instHPow.{u2, 0} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) Nat (Monoid.Pow.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))))) p s) m) -> (LE.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (HPow.hPow.{u1, 0, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) Nat (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (instHPow.{u1, 0} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) Nat (Monoid.Pow.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) s) n))
+Case conversion may be inaccurate. Consider using '#align pow_image_of_prime_by_factor_order_iso_dvd pow_image_of_prime_by_factor_orderIso_dvdₓ'. -/
 theorem pow_image_of_prime_by_factor_orderIso_dvd [DecidableEq (Associates M)] {m p : Associates M}
     {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n)
     {s : ℕ} (hs' : p ^ s ≤ m) : (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : Associates N) ^ s ≤ n :=
@@ -293,6 +371,12 @@ theorem pow_image_of_prime_by_factor_orderIso_dvd [DecidableEq (Associates M)] {
   exact ne_zero_of_dvd_ne_zero hn (Subtype.prop (d ⟨c₁ 1 ^ s, _⟩))
 #align pow_image_of_prime_by_factor_order_iso_dvd pow_image_of_prime_by_factor_orderIso_dvd
 
+/- warning: map_prime_of_factor_order_iso -> map_prime_of_factor_orderIso is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Prime.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))))
+but is expected to have type
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Prime.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))))
+Case conversion may be inaccurate. Consider using '#align map_prime_of_factor_order_iso map_prime_of_factor_orderIsoₓ'. -/
 theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associates M}
     {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
     Prime (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : Associates N) :=
@@ -322,6 +406,12 @@ theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associa
     exact bot_le
 #align map_prime_of_factor_order_iso map_prime_of_factor_orderIso
 
+/- warning: mem_normalized_factors_factor_order_iso_of_mem_normalized_factors -> mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_6 : DecidableEq.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Multiset.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Multiset.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.cancelCommMonoidWithZero.{u2} N _inst_2) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => _inst_6 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.cancelCommMonoidWithZero.{u2} N _inst_2) (Associates.uniqueUnits.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.ufm.{u2} N _inst_2 _inst_3) n))
+but is expected to have type
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] [_inst_6 : DecidableEq.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Multiset.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Multiset.instMembershipMultiset.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_5 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u1} N _inst_2) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => _inst_6 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u1} N _inst_2) (Associates.uniqueUnits.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.ufm.{u1} N _inst_2 _inst_3) n))
+Case conversion may be inaccurate. Consider using '#align mem_normalized_factors_factor_order_iso_of_mem_normalized_factors mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactorsₓ'. -/
 theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [DecidableEq (Associates M)]
     [DecidableEq (Associates N)] {m p : Associates M} {n : Associates N} (hn : n ≠ 0)
     (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
@@ -336,6 +426,12 @@ theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [Decidabl
 
 variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣ ·) : N → N → Prop)]
 
+/- warning: multiplicity_prime_le_multiplicity_image_by_factor_order_iso -> multiplicity_prime_le_multiplicity_image_by_factor_orderIso is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))} (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.hasLe (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n)
+but is expected to have type
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4382 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4380 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4382)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4406 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4404 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4406)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))} (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), LE.le.{0} PartENat PartENat.instLEPartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n)
+Case conversion may be inaccurate. Consider using '#align multiplicity_prime_le_multiplicity_image_by_factor_order_iso multiplicity_prime_le_multiplicity_image_by_factor_orderIsoₓ'. -/
 theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hp : p ∈ normalizedFactors m)
     (d : Set.Iic m ≃o Set.Iic n) :
@@ -352,6 +448,12 @@ theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq
   exact pow_image_of_prime_by_factor_orderIso_dvd hn hp d (pow_multiplicity_dvd _)
 #align multiplicity_prime_le_multiplicity_image_by_factor_order_iso multiplicity_prime_le_multiplicity_image_by_factor_orderIso
 
+/- warning: multiplicity_prime_eq_multiplicity_image_by_factor_order_iso -> multiplicity_prime_eq_multiplicity_image_by_factor_orderIso is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_5 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_6 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] [_inst_7 : DecidableEq.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] {m : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {p : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))} {n : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))}, (Ne.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) n (OfNat.ofNat.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (OfNat.mk.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) 0 (Zero.zero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.hasZero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))))))) -> (forall (hp : Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Multiset.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Multiset.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m)) (d : OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.commMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (a : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Associates.HasDvd.Dvd.decidableRel.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.commMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (a : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (b : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Associates.HasDvd.Dvd.decidableRel.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (coeSubtype.{succ u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m))) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)))) (fun (_x : RelIso.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) -> (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))) (RelIso.hasCoeToFun.{u1, u2} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (LE.le.{u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) Type.{u1} (Set.hasCoeToSort.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) (Subtype.hasLe.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Preorder.toLE.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)))) (LE.le.{u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) Type.{u2} (Set.hasCoeToSort.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n)) (Subtype.hasLe.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Preorder.toLE.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (fun (x : Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) => Membership.Mem.{u2, u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Set.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Set.hasMem.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) x (Set.Iic.{u2} (Associates.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2)))) (Associates.preorder.{u2} N (CommMonoidWithZero.toCommMonoid.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) n))))) d (Subtype.mk.{succ u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (fun (x : Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => Membership.Mem.{u1, u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Set.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Set.hasMem.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) x (Set.Iic.{u1} (Associates.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.preorder.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (fun (a : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (b : Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} (Associates.{u1} M (CommMonoid.toMonoid.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.cancelCommMonoidWithZero.{u1} M _inst_1) (Associates.uniqueUnits.{u1} M (CommMonoidWithZero.toCommMonoid.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1)))) (Associates.ufm.{u1} M _inst_1 _inst_4) m p hp)))) n))
+but is expected to have type
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_4 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_5 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4608 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4606 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4608)] [_inst_6 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4632 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4630 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.4632)] [_inst_7 : DecidableEq.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] {m : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {p : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))} {n : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))}, (Ne.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) n (OfNat.ofNat.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) 0 (Zero.toOfNat0.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instZeroAssociates.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)) (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))))) -> (forall (hp : Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Multiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Multiset.instMembershipMultiset.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) p (UniqueFactorizationMonoid.normalizedFactors.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m)) (d : OrderIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)))), Eq.{1} PartENat (multiplicity.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (MonoidWithZero.toMonoid.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (CommMonoidWithZero.toMonoidWithZero.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (a : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1) (fun (a : M) (b : M) => _inst_5 a b) a b) p m) (multiplicity.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (MonoidWithZero.toMonoid.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (CommMonoidWithZero.toMonoidWithZero.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (a : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (b : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Associates.instDecidableRelAssociatesToMonoidToMonoidWithZeroDvdSemigroupDvdToSemigroupToSemigroupWithZeroInstCommMonoidWithZeroAssociatesToMonoidToMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2) (fun (a : N) (b : N) => _inst_6 a b) a b) (Subtype.val.{succ u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (fun (_x : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (RelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298)) (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) => LE.le.{u2} (Set.Elem.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) (Subtype.le.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Preorder.toLE.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m))) x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) => LE.le.{u1} (Set.Elem.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n)) (Subtype.le.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Preorder.toLE.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (fun (x : Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) => Membership.mem.{u1, u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Set.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Set.instMembershipSet.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x (Set.Iic.{u1} (Associates.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2)))) (Associates.instPreorderAssociatesToMonoid.{u1} N (CommMonoidWithZero.toCommMonoid.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) n))) x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) d (Subtype.mk.{succ u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (fun (x : Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => Membership.mem.{u2, u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Set.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Set.instMembershipSet.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x (Set.Iic.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instPreorderAssociatesToMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) m)) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} (Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (fun (a : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (b : Associates.{u2} M (CommMonoid.toMonoid.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} (Associates.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.instCancelCommMonoidWithZeroAssociatesToMonoidToMonoidWithZeroToCommMonoidWithZero.{u2} M _inst_1) (Associates.uniqueUnits.{u2} M (CommMonoidWithZero.toCommMonoid.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1)))) (Associates.ufm.{u2} M _inst_1 _inst_4) m p hp)))) n))
+Case conversion may be inaccurate. Consider using '#align multiplicity_prime_eq_multiplicity_image_by_factor_order_iso multiplicity_prime_eq_multiplicity_image_by_factor_orderIsoₓ'. -/
 theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
     {m p : Associates M} {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
     (d : Set.Iic m ≃o Set.Iic n) :
@@ -374,6 +476,7 @@ end
 
 variable [Unique Mˣ] [Unique Nˣ]
 
+#print mkFactorOrderIsoOfFactorDvdEquiv /-
 /-- The order isomorphism between the factors of `mk m` and the factors of `mk n` induced by a
   bijection between the factors of `m` and the factors of `n` that preserves `∣`. -/
 @[simps]
@@ -408,9 +511,16 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
       simp only [Equiv.coe_fn_mk, Subtype.mk_le_mk, Associates.mk_le_mk_iff_dvd_iff, hd,
         Subtype.coe_mk, associatesEquivOfUniqueUnits_apply, out_dvd_iff, mk_out]
 #align mk_factor_order_iso_of_factor_dvd_equiv mkFactorOrderIsoOfFactorDvdEquiv
+-/
 
 variable [UniqueFactorizationMonoid M] [UniqueFactorizationMonoid N] [DecidableEq M]
 
+/- warning: mem_normalized_factors_factor_dvd_iso_of_mem_normalized_factors -> mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : Unique.{succ u1} (Units.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_4 : Unique.{succ u2} (Units.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_7 : DecidableEq.{succ u1} M] [_inst_8 : DecidableEq.{succ u2} N] {m : M} {p : M} {n : N}, (Ne.{succ u1} M m (OfNat.ofNat.{u1} M 0 (OfNat.mk.{u1} M 0 (Zero.zero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) -> (Ne.{succ u2} N n (OfNat.ofNat.{u2} N 0 (OfNat.mk.{u2} N 0 (Zero.zero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))))) -> (forall (hp : Membership.Mem.{u1, u1} M (Multiset.{u1} M) (Multiset.hasMem.{u1} M) p (UniqueFactorizationMonoid.normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (l' : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)), Iff (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l'))) (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l'))) -> (Membership.Mem.{u2, u2} N (Multiset.{u2} N) (Multiset.hasMem.{u2} N) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d (Subtype.mk.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} N _inst_2 (fun (a : N) (b : N) => _inst_8 a b) (normalizationMonoidOfUniqueUnits.{u2} N _inst_2 _inst_4) _inst_6 n)))
+but is expected to have type
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : Unique.{succ u1} (Units.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_4 : Unique.{succ u2} (Units.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_7 : DecidableEq.{succ u1} M] [_inst_8 : DecidableEq.{succ u2} N] {m : M} {p : M} {n : N}, (Ne.{succ u1} M m (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (CommMonoidWithZero.toZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) -> (Ne.{succ u2} N n (OfNat.ofNat.{u2} N 0 (Zero.toOfNat0.{u2} N (CommMonoidWithZero.toZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) -> (forall (hp : Membership.mem.{u1, u1} M (Multiset.{u1} M) (Multiset.instMembershipMultiset.{u1} M) p (UniqueFactorizationMonoid.normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (l' : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)), Iff (Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l)) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l'))) (Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) (Subtype.val.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) l) (Subtype.val.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) l'))) -> (Membership.mem.{u2, u2} N (Multiset.{u2} N) (Multiset.instMembershipMultiset.{u2} N) (Subtype.val.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) => Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d (Subtype.mk.{succ u1} M (fun (l : M) => Dvd.dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m p hp)))) (UniqueFactorizationMonoid.normalizedFactors.{u2} N _inst_2 (fun (a : N) (b : N) => _inst_8 a b) (normalizationMonoidOfUniqueUnits.{u2} N _inst_2 _inst_4) _inst_6 n)))
+Case conversion may be inaccurate. Consider using '#align mem_normalized_factors_factor_dvd_iso_of_mem_normalized_factors mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactorsₓ'. -/
 theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [DecidableEq N] {m p : M}
     {n : N} (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
     {d : { l : M // l ∣ m } ≃ { l : N // l ∣ n }}
@@ -454,7 +564,13 @@ theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [Decidable
 
 variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣ ·) : N → N → Prop)]
 
-theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor {m p : M} {n : N}
+/- warning: multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor -> multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors is a dubious translation:
+lean 3 declaration is
+  forall {M : Type.{u1}} [_inst_1 : CancelCommMonoidWithZero.{u1} M] {N : Type.{u2}} [_inst_2 : CancelCommMonoidWithZero.{u2} N] [_inst_3 : Unique.{succ u1} (Units.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))] [_inst_4 : Unique.{succ u2} (Units.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u1} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u2} N _inst_2] [_inst_7 : DecidableEq.{succ u1} M] [_inst_8 : DecidableRel.{succ u1} M (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))] [_inst_9 : DecidableRel.{succ u2} N (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))] {m : M} {p : M} {n : N}, (Ne.{succ u1} M m (OfNat.ofNat.{u1} M 0 (OfNat.mk.{u1} M 0 (Zero.zero.{u1} M (MulZeroClass.toHasZero.{u1} M (MulZeroOneClass.toMulZeroClass.{u1} M (MonoidWithZero.toMulZeroOneClass.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))))))) -> (Ne.{succ u2} N n (OfNat.ofNat.{u2} N 0 (OfNat.mk.{u2} N 0 (Zero.zero.{u2} N (MulZeroClass.toHasZero.{u2} N (MulZeroOneClass.toMulZeroClass.{u2} N (MonoidWithZero.toMulZeroOneClass.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))))))) -> (forall (hp : Membership.Mem.{u1, u1} M (Multiset.{u1} M) (Multiset.hasMem.{u1} M) p (UniqueFactorizationMonoid.normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (l' : Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)), Iff (Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d l'))) (Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (HasLiftT.mk.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (CoeTCₓ.coe.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeBase.{succ u1, succ u1} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) M (coeSubtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m))))) l'))) -> (Eq.{1} PartENat (multiplicity.{u2} N (MonoidWithZero.toMonoid.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))) (fun (a : N) (b : N) => _inst_9 a b) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (HasLiftT.mk.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (CoeTCₓ.coe.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeBase.{succ u2, succ u2} (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n)) N (coeSubtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (fun (_x : Equiv.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) => (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) -> (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) (Equiv.hasCoeToFun.{succ u1, succ u2} (Subtype.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m)) (Subtype.{succ u2} N (fun (l : N) => Dvd.Dvd.{u2} N (semigroupDvd.{u2} N (SemigroupWithZero.toSemigroup.{u2} N (MonoidWithZero.toSemigroupWithZero.{u2} N (CommMonoidWithZero.toMonoidWithZero.{u2} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} N _inst_2))))) l n))) d (Subtype.mk.{succ u1} M (fun (l : M) => Dvd.Dvd.{u1} M (semigroupDvd.{u1} M (SemigroupWithZero.toSemigroup.{u1} M (MonoidWithZero.toSemigroupWithZero.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u1} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u1} M _inst_1 _inst_3) _inst_5 m p hp)))) n) (multiplicity.{u1} M (MonoidWithZero.toMonoid.{u1} M (CommMonoidWithZero.toMonoidWithZero.{u1} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} M _inst_1))) (fun (a : M) (b : M) => _inst_8 a b) p m)))
+but is expected to have type
+  forall {M : Type.{u2}} [_inst_1 : CancelCommMonoidWithZero.{u2} M] {N : Type.{u1}} [_inst_2 : CancelCommMonoidWithZero.{u1} N] [_inst_3 : Unique.{succ u2} (Units.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))] [_inst_4 : Unique.{succ u1} (Units.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))] [_inst_5 : UniqueFactorizationMonoid.{u2} M _inst_1] [_inst_6 : UniqueFactorizationMonoid.{u1} N _inst_2] [_inst_7 : DecidableEq.{succ u2} M] [_inst_8 : DecidableRel.{succ u2} M (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761 : M) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5763 : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5761 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5763)] [_inst_9 : DecidableRel.{succ u1} N (fun (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785 : N) (x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5787 : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5785 x._@.Mathlib.RingTheory.ChainOfDivisors._hyg.5787)] {m : M} {p : M} {n : N}, (Ne.{succ u2} M m (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (CommMonoidWithZero.toZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) -> (Ne.{succ u1} N n (OfNat.ofNat.{u1} N 0 (Zero.toOfNat0.{u1} N (CommMonoidWithZero.toZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) -> (forall (hp : Membership.mem.{u2, u2} M (Multiset.{u2} M) (Multiset.instMembershipMultiset.{u2} M) p (UniqueFactorizationMonoid.normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m)) {d : Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))}, (forall (l : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (l' : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)), Iff (Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l)) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d l'))) (Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l) (Subtype.val.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) l'))) -> (Eq.{1} PartENat (multiplicity.{u1} N (MonoidWithZero.toMonoid.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))) (fun (a : N) (b : N) => _inst_9 a b) (Subtype.val.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Equiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (fun (_x : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) => Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n)) _x) (Equiv.instFunLikeEquiv.{succ u2, succ u1} (Subtype.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m)) (Subtype.{succ u1} N (fun (l : N) => Dvd.dvd.{u1} N (semigroupDvd.{u1} N (SemigroupWithZero.toSemigroup.{u1} N (MonoidWithZero.toSemigroupWithZero.{u1} N (CommMonoidWithZero.toMonoidWithZero.{u1} N (CancelCommMonoidWithZero.toCommMonoidWithZero.{u1} N _inst_2))))) l n))) d (Subtype.mk.{succ u2} M (fun (l : M) => Dvd.dvd.{u2} M (semigroupDvd.{u2} M (SemigroupWithZero.toSemigroup.{u2} M (MonoidWithZero.toSemigroupWithZero.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))))) l m) p (UniqueFactorizationMonoid.dvd_of_mem_normalizedFactors.{u2} M _inst_1 (fun (a : M) (b : M) => _inst_7 a b) (normalizationMonoidOfUniqueUnits.{u2} M _inst_1 _inst_3) _inst_5 m p hp)))) n) (multiplicity.{u2} M (MonoidWithZero.toMonoid.{u2} M (CommMonoidWithZero.toMonoidWithZero.{u2} M (CancelCommMonoidWithZero.toCommMonoidWithZero.{u2} M _inst_1))) (fun (a : M) (b : M) => _inst_8 a b) p m)))
+Case conversion may be inaccurate. Consider using '#align multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactorsₓ'. -/
+theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m p : M} {n : N}
     (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
     {d : { l : M // l ∣ m } ≃ { l : N // l ∣ n }} (hd : ∀ l l', (d l : N) ∣ d l' ↔ (l : M) ∣ l') :
     multiplicity (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : N) n = multiplicity p m :=
@@ -494,5 +610,5 @@ theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor {m
       ((prime_mk p).mpr (prime_of_normalized_factor p hp)).Irreducible
       (mk_le_mk_of_dvd (dvd_of_mem_normalized_factors hp))
   rwa [associated_iff_eq.mp hq']
-#align multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor
+#align multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors
 
Diff
@@ -206,7 +206,7 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
       n + 1 = (Finset.univ : Finset (Fin (n + 1))).card := (Finset.card_fin _).symm
       _ = (finset.univ.image c).card := (finset.card_image_iff.mpr (h₁.injective.inj_on _)).symm
       _ ≤ (finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card :=
-        Finset.card_le_of_subset _
+        (Finset.card_le_of_subset _)
       _ ≤ (Finset.univ : Finset (Fin (i + 1))).card := Finset.card_image_le
       _ = i + 1 := Finset.card_fin _
       
@@ -424,7 +424,7 @@ theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [Decidable
             simp [dvd_of_mem_normalized_factors hp]⟩)
     by
     simp only [associatesEquivOfUniqueUnits_apply, out_mk, normalize_eq,
-      associatesEquivOfUniqueUnits_symmApply] at this
+      associatesEquivOfUniqueUnits_symm_apply] at this
     obtain ⟨q, hq, hq'⟩ :=
       exists_mem_normalized_factors_of_dvd hn this.irreducible
         (d ⟨p, by apply dvd_of_mem_normalized_factors <;> convert hp⟩).Prop
@@ -434,10 +434,10 @@ theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [Decidable
         ↑(d
             ⟨associatesEquivOfUniqueUnits (associates_equiv_of_unique_units.symm p), by
               simp only [dvd_of_mem_normalized_factors hp, associatesEquivOfUniqueUnits_apply,
-                out_mk, normalize_eq, associatesEquivOfUniqueUnits_symmApply]⟩) =
+                out_mk, normalize_eq, associatesEquivOfUniqueUnits_symm_apply]⟩) =
       ↑(mkFactorOrderIsoOfFactorDvdEquiv hd
           ⟨associates_equiv_of_unique_units.symm p, by
-            simp only [associatesEquivOfUniqueUnits_symmApply] <;>
+            simp only [associatesEquivOfUniqueUnits_symm_apply] <;>
               exact mk_dvd_mk.mpr (dvd_of_mem_normalized_factors hp)⟩) :=
     by
     rw [mkFactorOrderIsoOfFactorDvdEquiv_apply_coe]
@@ -449,7 +449,7 @@ theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [Decidable
     exists_mem_normalized_factors_of_dvd (mk_ne_zero.mpr hm)
       ((prime_mk p).mpr (prime_of_normalized_factor p (by convert hp))).Irreducible
       (mk_le_mk_of_dvd (dvd_of_mem_normalized_factors hp))
-  simpa only [associated_iff_eq.mp hq', associatesEquivOfUniqueUnits_symmApply] using hq
+  simpa only [associated_iff_eq.mp hq', associatesEquivOfUniqueUnits_symm_apply] using hq
 #align mem_normalized_factors_factor_dvd_iso_of_mem_normalized_factors mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors
 
 variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣ ·) : N → N → Prop)]
@@ -469,17 +469,17 @@ theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor {m
                 simp [dvd_of_mem_normalized_factors hp]⟩))
         (Associates.mk n)
     by
-    simpa only [multiplicity_mk_eq_multiplicity, associatesEquivOfUniqueUnits_symmApply,
+    simpa only [multiplicity_mk_eq_multiplicity, associatesEquivOfUniqueUnits_symm_apply,
       associatesEquivOfUniqueUnits_apply, out_mk, normalize_eq] using this
   have :
     Associates.mk
         ↑(d
             ⟨associatesEquivOfUniqueUnits (associates_equiv_of_unique_units.symm p), by
-              simp only [dvd_of_mem_normalized_factors hp, associatesEquivOfUniqueUnits_symmApply,
+              simp only [dvd_of_mem_normalized_factors hp, associatesEquivOfUniqueUnits_symm_apply,
                 associatesEquivOfUniqueUnits_apply, out_mk, normalize_eq]⟩) =
       ↑(mkFactorOrderIsoOfFactorDvdEquiv hd
           ⟨associates_equiv_of_unique_units.symm p, by
-            rw [associatesEquivOfUniqueUnits_symmApply] <;>
+            rw [associatesEquivOfUniqueUnits_symm_apply] <;>
               exact mk_le_mk_of_dvd (dvd_of_mem_normalized_factors hp)⟩) :=
     by
     rw [mkFactorOrderIsoOfFactorDvdEquiv_apply_coe]

Changes in mathlib4

mathlib3
mathlib4
chore: adapt to multiple goal linter 3 (#12372)

A PR analogous to #12338 and #12361: reformatting proofs following the multiple goals linter of #12339.

Diff
@@ -202,9 +202,9 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
     have := h₂.2 ⟨j, rfl⟩
     rw [hi'] at this
     have h := (dvd_prime_pow (show Prime (c 1) from ?_) i).1 this
-    rcases h with ⟨u, hu, hu'⟩
-    refine' Finset.mem_image.mpr ⟨u, Finset.mem_univ _, _⟩
-    · rw [associated_iff_eq] at hu'
+    · rcases h with ⟨u, hu, hu'⟩
+      refine' Finset.mem_image.mpr ⟨u, Finset.mem_univ _, _⟩
+      rw [associated_iff_eq] at hu'
       rw [Fin.val_cast_of_lt (Nat.lt_succ_of_le hu), hu']
     · rw [← irreducible_iff_prime]
       exact second_of_chain_is_irreducible hn h₁ (@h₂) hq
chore(Associated): add simps, golf (#11435)

New simp tags or simp lemmas

associated_one_iff_isUnit, associated_zero_iff_eq_zero, Associates.mk_eq_one, Associates.mk_dvd_mk, Associates.mk_isRelPrime_iff, Associates.mk_zero, Associates.quot_out_zero, Associates.le_zero, Associates.prime_mk, Associates.irreducible_mk, Associates.mk_dvdNotUnit_mk_iff, Associates.factors_le, Associates.prod_factors

New gcongr tags

Associates.factors_mono, Associates.prod_mono

Change explicit args to implicit

Associates.prime_mk, Associates.irreducible_mk, Associates.one_or_eq_of_le_of_prime

Change typeclass assumptions

  • drop [Nontrivial _] here and there, mostly in cases when a lemma has _ ≠ _ assumption
  • drop all decidability assumptions in Associates.FactorSetMem
  • drop decidability assumptions when they aren't needed to formulate a theorem

Use WithTop API

Use WithTop.some and instead of Option.some and none in UniqueFactorizationDomain.

Renames

  • Associates.isPrimal_iffAssociates.isPrimal_mk;
  • Associates.mk_le_mk_iff_dvd_iffAssociates.mk_le_mk_iff_dvd;
  • Associates.factors_0Associates.factors_zero;
  • Associates.factors_eq_none_iff_zeroAssociates.factors_eq_top_iff_zero
Diff
@@ -365,7 +365,7 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
             obtain ⟨x, hx⟩ := l
             rw [Subtype.coe_mk, associatesEquivOfUniqueUnits_apply, out_dvd_iff]
             exact hx⟩),
-      mk_le_mk_iff_dvd_iff.mpr (Subtype.prop (d ⟨associatesEquivOfUniqueUnits ↑l, _⟩))⟩
+      mk_le_mk_iff_dvd.mpr (Subtype.prop (d ⟨associatesEquivOfUniqueUnits ↑l, _⟩))⟩
   invFun l :=
     ⟨Associates.mk
         (d.symm
@@ -373,7 +373,7 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
             obtain ⟨x, hx⟩ := l
             rw [Subtype.coe_mk, associatesEquivOfUniqueUnits_apply, out_dvd_iff]
             exact hx⟩),
-      mk_le_mk_iff_dvd_iff.mpr (Subtype.prop (d.symm ⟨associatesEquivOfUniqueUnits ↑l, _⟩))⟩
+      mk_le_mk_iff_dvd.mpr (Subtype.prop (d.symm ⟨associatesEquivOfUniqueUnits ↑l, _⟩))⟩
   left_inv := fun ⟨l, hl⟩ => by
     simp only [Subtype.coe_eta, Equiv.symm_apply_apply, Subtype.coe_mk,
       associatesEquivOfUniqueUnits_apply, mk_out, out_mk, normalize_eq]
@@ -382,7 +382,7 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
       associatesEquivOfUniqueUnits_apply, out_mk, normalize_eq, mk_out]
   map_rel_iff' := by
     rintro ⟨a, ha⟩ ⟨b, hb⟩
-    simp only [Equiv.coe_fn_mk, Subtype.mk_le_mk, Associates.mk_le_mk_iff_dvd_iff, hd,
+    simp only [Equiv.coe_fn_mk, Subtype.mk_le_mk, Associates.mk_le_mk_iff_dvd, hd,
         Subtype.coe_mk, associatesEquivOfUniqueUnits_apply, out_dvd_iff, mk_out]
 #align mk_factor_order_iso_of_factor_dvd_equiv mkFactorOrderIsoOfFactorDvdEquiv
 
@@ -416,7 +416,7 @@ theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors {m p : M}
   refine' map_prime_of_factor_orderIso (mk_ne_zero.mpr hn) _ _
   obtain ⟨q, hq, hq'⟩ :=
     exists_mem_normalizedFactors_of_dvd (mk_ne_zero.mpr hm)
-      ((prime_mk p).mpr (prime_of_normalized_factor p (by convert hp))).irreducible
+      (prime_mk.mpr (prime_of_normalized_factor p (by convert hp))).irreducible
       (mk_le_mk_of_dvd (dvd_of_mem_normalizedFactors hp))
   simpa only [associated_iff_eq.mp hq', associatesEquivOfUniqueUnits_symm_apply] using hq
 #align mem_normalized_factors_factor_dvd_iso_of_mem_normalized_factors mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors
@@ -446,7 +446,7 @@ theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m
       (mkFactorOrderIsoOfFactorDvdEquiv hd)
   obtain ⟨q, hq, hq'⟩ :=
     exists_mem_normalizedFactors_of_dvd (mk_ne_zero.mpr hm)
-      ((prime_mk p).mpr (prime_of_normalized_factor p hp)).irreducible
+      (prime_mk.mpr (prime_of_normalized_factor p hp)).irreducible
       (mk_le_mk_of_dvd (dvd_of_mem_normalizedFactors hp))
   rwa [associated_iff_eq.mp hq']
 #align multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalized_factor multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors
chore: avoid Ne.def (adaptation for nightly-2024-03-27) (#11813)
Diff
@@ -285,7 +285,7 @@ theorem map_prime_of_factor_orderIso {m p : Associates M} {n : Associates N} (hn
     Prime (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : Associates N) := by
   rw [← irreducible_iff_prime]
   refine' (Associates.isAtom_iff <| ne_zero_of_dvd_ne_zero hn (d ⟨p, _⟩).prop).mp ⟨_, fun b hb => _⟩
-  · rw [Ne.def, ← Associates.isUnit_iff_eq_bot, Associates.isUnit_iff_eq_one,
+  · rw [Ne, ← Associates.isUnit_iff_eq_bot, Associates.isUnit_iff_eq_one,
       coe_factor_orderIso_map_eq_one_iff _ d]
     rintro rfl
     exact (prime_of_normalized_factor 1 hp).not_unit isUnit_one
fix: remove DecidableEq assumption from factors (#11158)

It doesn't make a lot of sense for factors to require a DecidableEq assumption since it's not used in the statement, and the definition is already noncomputable. This PR removes that assumption and updates some lemmas later in the file accordingly.

Diff
@@ -249,8 +249,8 @@ variable [UniqueFactorizationMonoid N] [UniqueFactorizationMonoid M]
 open DivisorChain
 
 theorem pow_image_of_prime_by_factor_orderIso_dvd
-    [DecidableEq (Associates M)] {m p : Associates M} {n : Associates N} (hn : n ≠ 0)
-    (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) {s : ℕ} (hs' : p ^ s ≤ m) :
+    {m p : Associates M} {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
+    (d : Set.Iic m ≃o Set.Iic n) {s : ℕ} (hs' : p ^ s ≤ m) :
     (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : Associates N) ^ s ≤ n := by
   by_cases hs : s = 0
   · simp [hs]
@@ -280,8 +280,8 @@ theorem pow_image_of_prime_by_factor_orderIso_dvd
   exact ne_zero_of_dvd_ne_zero hn (Subtype.prop (d ⟨c₁ 1 ^ s, _⟩))
 #align pow_image_of_prime_by_factor_order_iso_dvd pow_image_of_prime_by_factor_orderIso_dvd
 
-theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associates M}
-    {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
+theorem map_prime_of_factor_orderIso {m p : Associates M} {n : Associates N} (hn : n ≠ 0)
+    (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
     Prime (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : Associates N) := by
   rw [← irreducible_iff_prime]
   refine' (Associates.isAtom_iff <| ne_zero_of_dvd_ne_zero hn (d ⟨p, _⟩).prop).mp ⟨_, fun b hb => _⟩
@@ -307,9 +307,8 @@ theorem map_prime_of_factor_orderIso [DecidableEq (Associates M)] {m p : Associa
     simp
 #align map_prime_of_factor_order_iso map_prime_of_factor_orderIso
 
-theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [DecidableEq (Associates M)]
-    [DecidableEq (Associates N)] {m p : Associates M} {n : Associates N} (hn : n ≠ 0)
-    (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
+theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors {m p : Associates M}
+    {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
     (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : Associates N) ∈ normalizedFactors n := by
   obtain ⟨q, hq, hq'⟩ :=
     exists_mem_normalizedFactors_of_dvd hn (map_prime_of_factor_orderIso hn hp d).irreducible
@@ -320,9 +319,8 @@ theorem mem_normalizedFactors_factor_orderIso_of_mem_normalizedFactors [Decidabl
 
 variable [DecidableRel ((· ∣ ·) : M → M → Prop)] [DecidableRel ((· ∣ ·) : N → N → Prop)]
 
-theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
-    {m p : Associates M} {n : Associates N} (hp : p ∈ normalizedFactors m)
-    (d : Set.Iic m ≃o Set.Iic n) :
+theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso {m p : Associates M}
+    {n : Associates N} (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
     multiplicity p m ≤ multiplicity (↑(d ⟨p, dvd_of_mem_normalizedFactors hp⟩)) n := by
   by_cases hn : n = 0
   · simp [hn]
@@ -335,9 +333,8 @@ theorem multiplicity_prime_le_multiplicity_image_by_factor_orderIso [DecidableEq
   exact pow_image_of_prime_by_factor_orderIso_dvd hn hp d (pow_multiplicity_dvd _)
 #align multiplicity_prime_le_multiplicity_image_by_factor_order_iso multiplicity_prime_le_multiplicity_image_by_factor_orderIso
 
-theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso [DecidableEq (Associates M)]
-    {m p : Associates M} {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
-    (d : Set.Iic m ≃o Set.Iic n) :
+theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso {m p : Associates M}
+    {n : Associates N} (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) (d : Set.Iic m ≃o Set.Iic n) :
     multiplicity p m = multiplicity (↑(d ⟨p, dvd_of_mem_normalizedFactors hp⟩)) n := by
   refine' le_antisymm (multiplicity_prime_le_multiplicity_image_by_factor_orderIso hp d) _
   suffices multiplicity (↑(d ⟨p, dvd_of_mem_normalizedFactors hp⟩)) n ≤
@@ -389,11 +386,10 @@ def mkFactorOrderIsoOfFactorDvdEquiv {m : M} {n : N} {d : { l : M // l ∣ m } 
         Subtype.coe_mk, associatesEquivOfUniqueUnits_apply, out_dvd_iff, mk_out]
 #align mk_factor_order_iso_of_factor_dvd_equiv mkFactorOrderIsoOfFactorDvdEquiv
 
-variable [UniqueFactorizationMonoid M] [UniqueFactorizationMonoid N] [DecidableEq M]
+variable [UniqueFactorizationMonoid M] [UniqueFactorizationMonoid N]
 
-theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors [DecidableEq N] {m p : M}
-    {n : N} (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
-    {d : { l : M // l ∣ m } ≃ { l : N // l ∣ n }}
+theorem mem_normalizedFactors_factor_dvd_iso_of_mem_normalizedFactors {m p : M} {n : N} (hm : m ≠ 0)
+    (hn : n ≠ 0) (hp : p ∈ normalizedFactors m) {d : { l : M // l ∣ m } ≃ { l : N // l ∣ n }}
     (hd : ∀ l l', (d l : N) ∣ d l' ↔ (l : M) ∣ (l' : M)) :
     ↑(d ⟨p, dvd_of_mem_normalizedFactors hp⟩) ∈ normalizedFactors n := by
   suffices
@@ -445,7 +441,6 @@ theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m
       exact mk_le_mk_of_dvd (dvd_of_mem_normalizedFactors hp)⟩) :=
     by rw [mkFactorOrderIsoOfFactorDvdEquiv_apply_coe]
   rw [this]
-  letI := Classical.decEq (Associates M)
   refine'
     multiplicity_prime_eq_multiplicity_image_by_factor_orderIso (mk_ne_zero.mpr hn) _
       (mkFactorOrderIsoOfFactorDvdEquiv hd)
chore: remove stream-of-consciousness uses of have, replace and suffices (#10640)

No changes to tactic file, it's just boring fixes throughout the library.

This follows on from #6964.

Co-authored-by: sgouezel <sebastien.gouezel@univ-rennes1.fr> Co-authored-by: Eric Wieser <wieser.eric@gmail.com>

Diff
@@ -171,8 +171,8 @@ theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (
       refine'
         pow_injective_of_not_unit (element_of_chain_not_isUnit_of_index_ne_zero (by simp) h₁) _ h
       exact Irreducible.ne_zero (second_of_chain_is_irreducible hn h₁ (@h₂) hq)
-    suffices H' : ∀ r ∈ Finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ), r ≤ q
-    · simp only [← Nat.succ_le_iff, Nat.succ_eq_add_one, ← this]
+    suffices H' : ∀ r ∈ Finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ), r ≤ q by
+      simp only [← Nat.succ_le_iff, Nat.succ_eq_add_one, ← this]
       apply card_subset_divisors_le_length_of_chain (@h₂) H'
     simp only [Finset.mem_image]
     rintro r ⟨a, _, rfl⟩
feat: a polynomial over a perfect field is separable iff it is square-free (#10170)

Yet another small step toward Jordan-Chevalley-Dunford.

This was far more work than expected, partly because of missing API for Squarefree, and partly because the definition IsCoprime is the wrong concept for unique factorization domains.

Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Anne Baanen, Paul Lezeau
 -/
 import Mathlib.Algebra.IsPrimePow
-import Mathlib.Algebra.Squarefree
+import Mathlib.Algebra.Squarefree.Basic
 import Mathlib.Order.Hom.Bounded
 import Mathlib.Algebra.GCDMonoid.Basic
 
chore: Improve Finset lemma names (#8894)

Change a few lemma names that have historically bothered me.

  • Finset.card_le_of_subsetFinset.card_le_card
  • Multiset.card_le_of_leMultiset.card_le_card
  • Multiset.card_lt_of_ltMultiset.card_lt_card
  • Set.ncard_le_of_subsetSet.ncard_le_ncard
  • Finset.image_filterFinset.filter_image
  • CompleteLattice.finset_sup_compact_of_compactCompleteLattice.isCompactElement_finset_sup
Diff
@@ -141,7 +141,7 @@ theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
       obtain ⟨i, hi⟩ := h₂.1 hr
       exact Finset.mem_image.2 ⟨i, Finset.mem_univ _, hi.symm⟩
     rw [← Finset.card_fin (n + 1)]
-    exact (Finset.card_le_of_subset fun x hx => mem_image x <| hm x hx).trans Finset.card_image_le
+    exact (Finset.card_le_card fun x hx => mem_image x <| hm x hx).trans Finset.card_image_le
 #align divisor_chain.card_subset_divisors_le_length_of_chain DivisorChain.card_subset_divisors_le_length_of_chain
 
 variable [UniqueFactorizationMonoid M]
@@ -194,7 +194,7 @@ theorem eq_pow_second_of_chain_of_has_chain {q : Associates M} {n : ℕ} (hn : n
       n + 1 = (Finset.univ : Finset (Fin (n + 1))).card := (Finset.card_fin _).symm
       _ = (Finset.univ.image c).card := (Finset.card_image_iff.mpr (h₁.injective.injOn _)).symm
       _ ≤ (Finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card :=
-        (Finset.card_le_of_subset ?_)
+        (Finset.card_le_card ?_)
       _ ≤ (Finset.univ : Finset (Fin (i + 1))).card := Finset.card_image_le
       _ = i + 1 := Finset.card_fin _
     intro r hr
fix: attribute [simp] ... in -> attribute [local simp] ... in (#7678)

Mathlib.Logic.Unique contains the line attribute [simp] eq_iff_true_of_subsingleton in ...:

https://github.com/leanprover-community/mathlib4/blob/96a11c7aac574c00370c2b3dab483cb676405c5d/Mathlib/Logic/Unique.lean#L255-L256

Despite what the in part may imply, this adds the lemma to the simp set "globally", including for downstream files; it is likely that attribute [local simp] eq_iff_true_of_subsingleton in ... was meant instead (or maybe scoped simp, but I think "scoped" refers to the current namespace). Indeed, the relevant lemma is not marked with @[simp] for possible slowness: https://github.com/leanprover/std4/blob/846e9e1d6bb534774d1acd2dc430e70987da3c18/Std/Logic.lean#L749. Adding it to the simp set causes the example at https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Regression.20in.20simp to slow down.

This PR changes this and fixes the relevant downstream simps. There was also one ocurrence of attribute [simp] FullSubcategory.comp_def FullSubcategory.id_def in in Mathlib.CategoryTheory.Monoidal.Subcategory but that was much easier to fix.

https://github.com/leanprover-community/mathlib4/blob/bc49eb9ba756a233370b4b68bcdedd60402f71ed/Mathlib/CategoryTheory/Monoidal/Subcategory.lean#L118-L119

Diff
@@ -55,8 +55,7 @@ theorem Associates.isAtom_iff {p : Associates M} (h₁ : p ≠ 0) : IsAtom p ↔
         fun ha =>
         absurd
           (show p ∣ b from
-            ⟨(ha.unit⁻¹ : Units _), by
-              simp [hab]; rw [mul_assoc]; rw [IsUnit.mul_val_inv ha]; rw [mul_one]⟩)
+            ⟨(ha.unit⁻¹ : Units _), by rw [hab, mul_assoc, IsUnit.mul_val_inv ha, mul_one]⟩)
           hb⟩⟩
 #align associates.is_atom_iff Associates.isAtom_iff
 
chore: banish Type _ and Sort _ (#6499)

We remove all possible occurences of Type _ and Sort _ in favor of Type* and Sort*.

This has nice performance benefits.

Diff
@@ -37,7 +37,7 @@ and the set of factors of `a`.
 -/
 
 
-variable {M : Type _} [CancelCommMonoidWithZero M]
+variable {M : Type*} [CancelCommMonoidWithZero M]
 
 theorem Associates.isAtom_iff {p : Associates M} (h₁ : p ≠ 0) : IsAtom p ↔ Irreducible p :=
   ⟨fun hp =>
@@ -220,7 +220,7 @@ theorem isPrimePow_of_has_chain {q : Associates M} {n : ℕ} (hn : n ≠ 0)
 
 end DivisorChain
 
-variable {N : Type _} [CancelCommMonoidWithZero N]
+variable {N : Type*} [CancelCommMonoidWithZero N]
 
 theorem factor_orderIso_map_one_eq_bot {m : Associates M} {n : Associates N}
     (d : { l : Associates M // l ≤ m } ≃o { l : Associates N // l ≤ n }) :
chore: bump to nightly-2023-07-15 (#5992)

Various adaptations to changes when Fin API was moved to Std. One notable change is that many lemmas are now stated in terms of i ≠ 0 (for i : Fin n) rather then i.1 ≠ 0, and as a consequence many Fin.vne_of_ne applications have been added or removed, mostly removed.

Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Wojciech Nawrocki <wjnawrocki@protonmail.com> Co-authored-by: Eric Wieser <wieser.eric@gmail.com>

Diff
@@ -86,7 +86,7 @@ theorem element_of_chain_not_isUnit_of_index_ne_zero {n : ℕ} {i : Fin (n + 1)}
     {c : Fin (n + 1) → Associates M} (h₁ : StrictMono c) : ¬IsUnit (c i) :=
   DvdNotUnit.not_unit
     (Associates.dvdNotUnit_iff_lt.2
-      (h₁ <| show (0 : Fin (n + 1)) < i from i.pos_iff_ne_zero.mpr i_pos))
+      (h₁ <| show (0 : Fin (n + 1)) < i from Fin.pos_iff_ne_zero.mpr i_pos))
 #align divisor_chain.element_of_chain_not_is_unit_of_index_ne_zero DivisorChain.element_of_chain_not_isUnit_of_index_ne_zero
 
 theorem first_of_chain_isUnit {q : Associates M} {n : ℕ} {c : Fin (n + 1) → Associates M}
@@ -117,7 +117,7 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
   · contradiction
   obtain ⟨i, rfl⟩ := h₂.1 (dvd_trans hp' hr)
   refine' congr_arg c (eq_of_ge_of_not_gt _ fun hi => _)
-  · rw [Fin.le_iff_val_le_val, Fin.val_one, Nat.succ_le_iff, ← Fin.val_zero (n.succ + 1), ←
+  · rw [Fin.le_iff_val_le_val, Fin.val_one, Nat.succ_le_iff, ← Fin.val_zero' (n.succ + 1), ←
       Fin.lt_iff_val_lt_val, Fin.pos_iff_ne_zero]
     rintro rfl
     exact hp.not_unit (first_of_chain_isUnit h₁ @h₂)
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -2,16 +2,13 @@
 Copyright (c) 2021 Paul Lezeau. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Anne Baanen, Paul Lezeau
-
-! This file was ported from Lean 3 source module ring_theory.chain_of_divisors
-! leanprover-community/mathlib commit f694c7dead66f5d4c80f446c796a5aad14707f0e
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Algebra.IsPrimePow
 import Mathlib.Algebra.Squarefree
 import Mathlib.Order.Hom.Bounded
 import Mathlib.Algebra.GCDMonoid.Basic
+
+#align_import ring_theory.chain_of_divisors from "leanprover-community/mathlib"@"f694c7dead66f5d4c80f446c796a5aad14707f0e"
 /-!
 
 # Chains of divisors
chore: cleanup whitespace (#5988)

Grepping for [^ .:{-] [^ :] and reviewing the results. Once I started I couldn't stop. :-)

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -243,7 +243,7 @@ theorem coe_factor_orderIso_map_eq_one_iff {m u : Associates M} {n : Associates
     conv_rhs => rw [← factor_orderIso_map_one_eq_bot d.symm]
     congr, fun hu => by
     simp_rw [hu]
-    conv_rhs =>  rw [← factor_orderIso_map_one_eq_bot d]⟩
+    conv_rhs => rw [← factor_orderIso_map_one_eq_bot d]⟩
 #align coe_factor_order_iso_map_eq_one_iff coe_factor_orderIso_map_eq_one_iff
 
 section
chore: bump to nightly-2023-07-01 (#5409)

Open in Gitpod

Co-authored-by: Komyyy <pol_tta@outlook.jp> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: Ruben Van de Velde <65514131+Ruben-VandeVelde@users.noreply.github.com> Co-authored-by: Mario Carneiro <di.gama@gmail.com>

Diff
@@ -133,7 +133,7 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
       _ hp.irreducible
   · simpa [Fin.succ_lt_succ_iff, Fin.lt_iff_val_lt_val] using hi
   · refine' Associates.dvdNotUnit_iff_lt.2 (h₁ _)
-    simpa only [Fin.coe_eq_castSuccEmb] using Fin.lt_succ
+    simpa only [Fin.coe_eq_castSucc] using Fin.lt_succ
 #align divisor_chain.eq_second_of_chain_of_prime_dvd DivisorChain.eq_second_of_chain_of_prime_dvd
 
 theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
chore: rename Fin.castSucc to Fin.castSuccEmb (#5729)

Co-authored-by: Parcly Taxel <reddeloostw@gmail.com>

Diff
@@ -133,7 +133,7 @@ theorem eq_second_of_chain_of_prime_dvd {p q r : Associates M} {n : ℕ} (hn : n
       _ hp.irreducible
   · simpa [Fin.succ_lt_succ_iff, Fin.lt_iff_val_lt_val] using hi
   · refine' Associates.dvdNotUnit_iff_lt.2 (h₁ _)
-    simpa only [Fin.coe_eq_castSucc] using Fin.lt_succ
+    simpa only [Fin.coe_eq_castSuccEmb] using Fin.lt_succ
 #align divisor_chain.eq_second_of_chain_of_prime_dvd DivisorChain.eq_second_of_chain_of_prime_dvd
 
 theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
chore: bye-bye, solo bys! (#3825)

This PR puts, with one exception, every single remaining by that lies all by itself on its own line to the previous line, thus matching the current behaviour of start-port.sh. The exception is when the by begins the second or later argument to a tuple or anonymous constructor; see https://github.com/leanprover-community/mathlib4/pull/3825#discussion_r1186702599.

Essentially this is s/\n *by$/ by/g, but with manual editing to satisfy the linter's max-100-char-line requirement. The Python style linter is also modified to catch these "isolated bys".

Diff
@@ -140,8 +140,7 @@ theorem card_subset_divisors_le_length_of_chain {q : Associates M} {n : ℕ}
     {c : Fin (n + 1) → Associates M} (h₂ : ∀ {r}, r ≤ q ↔ ∃ i, r = c i) {m : Finset (Associates M)}
     (hm : ∀ r, r ∈ m → r ≤ q) : m.card ≤ n + 1 := by
   classical
-    have mem_image : ∀ r : Associates M, r ≤ q → r ∈ Finset.univ.image c :=
-      by
+    have mem_image : ∀ r : Associates M, r ≤ q → r ∈ Finset.univ.image c := by
       intro r hr
       obtain ⟨i, hi⟩ := h₂.1 hr
       exact Finset.mem_image.2 ⟨i, Finset.mem_univ _, hi.symm⟩
@@ -156,21 +155,18 @@ theorem element_of_chain_eq_pow_second_of_chain {q r : Associates M} {n : ℕ} (
     (hr : r ∣ q) (hq : q ≠ 0) : ∃ i : Fin (n + 1), r = c 1 ^ (i : ℕ) := by
   classical
     let i := Multiset.card (normalizedFactors r)
-    have hi : normalizedFactors r = Multiset.replicate i (c 1) :=
-      by
+    have hi : normalizedFactors r = Multiset.replicate i (c 1) := by
       apply Multiset.eq_replicate_of_mem
       intro b hb
       refine'
         eq_second_of_chain_of_prime_dvd hn h₁ (@fun r' => h₂) (prime_of_normalized_factor b hb) hr
           (dvd_of_mem_normalizedFactors hb)
-    have H : r = c 1 ^ i :=
-      by
+    have H : r = c 1 ^ i := by
       have := UniqueFactorizationMonoid.normalizedFactors_prod (ne_zero_of_dvd_ne_zero hq hr)
       rw [associated_iff_eq, hi, Multiset.prod_replicate] at this
       rw [this]
     refine' ⟨⟨i, _⟩, H⟩
-    have : (Finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card = i + 1 :=
-      by
+    have : (Finset.univ.image fun m : Fin (i + 1) => c 1 ^ (m : ℕ)).card = i + 1 := by
       conv_rhs => rw [← Finset.card_fin (i + 1)]
       cases n
       · contradiction
@@ -348,10 +344,8 @@ theorem multiplicity_prime_eq_multiplicity_image_by_factor_orderIso [DecidableEq
     (d : Set.Iic m ≃o Set.Iic n) :
     multiplicity p m = multiplicity (↑(d ⟨p, dvd_of_mem_normalizedFactors hp⟩)) n := by
   refine' le_antisymm (multiplicity_prime_le_multiplicity_image_by_factor_orderIso hp d) _
-  suffices
-    multiplicity (↑(d ⟨p, dvd_of_mem_normalizedFactors hp⟩)) n ≤
-      multiplicity (↑(d.symm (d ⟨p, dvd_of_mem_normalizedFactors hp⟩))) m
-    by
+  suffices multiplicity (↑(d ⟨p, dvd_of_mem_normalizedFactors hp⟩)) n ≤
+      multiplicity (↑(d.symm (d ⟨p, dvd_of_mem_normalizedFactors hp⟩))) m by
     rw [d.symm_apply_apply ⟨p, dvd_of_mem_normalizedFactors hp⟩, Subtype.coe_mk] at this
     exact this
   letI := Classical.decEq (Associates N)
@@ -442,26 +436,17 @@ theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m
     {d : { l : M // l ∣ m } ≃ { l : N // l ∣ n }} (hd : ∀ l l', (d l : N) ∣ d l' ↔ (l : M) ∣ l') :
     multiplicity (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : N) n = multiplicity p m := by
   apply Eq.symm
-  suffices
-    multiplicity (Associates.mk p) (Associates.mk m) =
-      multiplicity
-        (Associates.mk
-          ↑(d
-              ⟨associatesEquivOfUniqueUnits (associatesEquivOfUniqueUnits.symm p), by
-                simp [dvd_of_mem_normalizedFactors hp]⟩))
-        (Associates.mk n)
-    by
+  suffices multiplicity (Associates.mk p) (Associates.mk m) = multiplicity (Associates.mk
+    ↑(d ⟨associatesEquivOfUniqueUnits (associatesEquivOfUniqueUnits.symm p), by
+      simp [dvd_of_mem_normalizedFactors hp]⟩)) (Associates.mk n) by
     simpa only [multiplicity_mk_eq_multiplicity, associatesEquivOfUniqueUnits_symm_apply,
       associatesEquivOfUniqueUnits_apply, out_mk, normalize_eq] using this
-  have :
-    Associates.mk
-        (d ⟨associatesEquivOfUniqueUnits (associatesEquivOfUniqueUnits.symm p), by
-              simp only [dvd_of_mem_normalizedFactors hp, associatesEquivOfUniqueUnits_symm_apply,
-                associatesEquivOfUniqueUnits_apply, out_mk, normalize_eq]⟩ : N) =
-      ↑(mkFactorOrderIsoOfFactorDvdEquiv hd
-          ⟨associatesEquivOfUniqueUnits.symm p, by
-            rw [associatesEquivOfUniqueUnits_symm_apply]
-            exact mk_le_mk_of_dvd (dvd_of_mem_normalizedFactors hp)⟩) :=
+  have : Associates.mk (d ⟨associatesEquivOfUniqueUnits (associatesEquivOfUniqueUnits.symm p), by
+    simp only [dvd_of_mem_normalizedFactors hp, associatesEquivOfUniqueUnits_symm_apply,
+      associatesEquivOfUniqueUnits_apply, out_mk, normalize_eq]⟩ : N) =
+    ↑(mkFactorOrderIsoOfFactorDvdEquiv hd ⟨associatesEquivOfUniqueUnits.symm p, by
+      rw [associatesEquivOfUniqueUnits_symm_apply]
+      exact mk_le_mk_of_dvd (dvd_of_mem_normalizedFactors hp)⟩) :=
     by rw [mkFactorOrderIsoOfFactorDvdEquiv_apply_coe]
   rw [this]
   letI := Classical.decEq (Associates M)
feat: port RingTheory.ChainOfDivisors (#3056)

Co-authored-by: Ruben Van de Velde <65514131+Ruben-VandeVelde@users.noreply.github.com> Co-authored-by: Chris Hughes <33847686+ChrisHughes24@users.noreply.github.com>

Dependencies 8 + 475

476 files ported (98.3%)
196884 lines ported (98.4%)
Show graph

The unported dependencies are