order.countable_dense_linear_orderMathlib.Order.CountableDenseLinearOrder

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)

(last sync)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -73,7 +73,7 @@ theorem exists_between_finsets {α : Type _} [LinearOrder α] [DenselyOrdered α
 
 variable (α β : Type _) [LinearOrder α] [LinearOrder β]
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (p q «expr ∈ » f) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (p q «expr ∈ » f) -/
 #print Order.PartialIso /-
 /-- The type of partial order isomorphisms between `α` and `β` defined on finite subsets.
     A partial order isomorphism is encoded as a finite subset of `α × β`, consisting
Diff
@@ -111,10 +111,10 @@ theorem exists_across [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonem
       ∀ y ∈ (f.val.filter fun p : α × β => a < p.fst).image Prod.snd, x < y :=
     by
     intro x hx y hy
-    rw [Finset.mem_image] at hx hy 
+    rw [Finset.mem_image] at hx hy
     rcases hx with ⟨p, hp1, rfl⟩
     rcases hy with ⟨q, hq1, rfl⟩
-    rw [Finset.mem_filter] at hp1 hq1 
+    rw [Finset.mem_filter] at hp1 hq1
     rw [← lt_iff_lt_of_cmp_eq_cmp (f.prop _ hp1.1 _ hq1.1)]
     exact lt_trans hp1.right hq1.right
   cases' exists_between_finsets _ _ this with b hb
@@ -124,10 +124,10 @@ theorem exists_across [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonem
   cases' lt_or_gt_of_ne this with hl hr
   · have : p1 < a ∧ p2 < b :=
       ⟨hl, hb.1 _ (finset.mem_image.mpr ⟨(p1, p2), finset.mem_filter.mpr ⟨hp, hl⟩, rfl⟩)⟩
-    rw [← cmp_eq_lt_iff, ← cmp_eq_lt_iff] at this ; cc
+    rw [← cmp_eq_lt_iff, ← cmp_eq_lt_iff] at this; cc
   · have : a < p1 ∧ b < p2 :=
       ⟨hr, hb.2 _ (finset.mem_image.mpr ⟨(p1, p2), finset.mem_filter.mpr ⟨hp, hr⟩, rfl⟩)⟩
-    rw [← cmp_eq_gt_iff, ← cmp_eq_gt_iff] at this ; cc
+    rw [← cmp_eq_gt_iff, ← cmp_eq_gt_iff] at this; cc
 #align order.partial_iso.exists_across Order.PartialIso.exists_across
 -/
 
@@ -137,10 +137,10 @@ protected def comm : PartialIso α β → PartialIso β α :=
   Subtype.map (Finset.image (Equiv.prodComm _ _)) fun f hf p hp q hq =>
     Eq.symm <|
       hf ((Equiv.prodComm α β).symm p)
-        (by rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hp ;
+        (by rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hp;
           rwa [← Finset.mem_coe])
         ((Equiv.prodComm α β).symm q)
-        (by rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hq ;
+        (by rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hq;
           rwa [← Finset.mem_coe])
 #align order.partial_iso.comm Order.PartialIso.comm
 -/
@@ -159,7 +159,7 @@ def definedAtLeft [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty
     refine'
       ⟨⟨insert (a, b) f.val, fun p hp q hq => _⟩, ⟨b, Finset.mem_insert_self _ _⟩,
         Finset.subset_insert _ _⟩
-    rw [Finset.mem_insert] at hp hq 
+    rw [Finset.mem_insert] at hp hq
     rcases hp with (rfl | pf) <;> rcases hq with (rfl | qf)
     · simp only [cmp_self_eq_eq]
     · rw [cmp_eq_cmp_symm]; exact a_b _ qf
@@ -183,8 +183,8 @@ def definedAtRight [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty
       rwa [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage]
     · change _ ⊆ f'.val.image _
       rw [← Finset.coe_subset, Finset.coe_image, ← Equiv.symm_image_subset]
-      change f.val.image _ ⊆ _ at hl 
-      rwa [← Finset.coe_subset, Finset.coe_image] at hl 
+      change f.val.image _ ⊆ _ at hl
+      rwa [← Finset.coe_subset, Finset.coe_image] at hl
 #align order.partial_iso.defined_at_right Order.PartialIso.definedAtRight
 -/
 
Diff
@@ -182,7 +182,7 @@ def definedAtRight [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty
     · change (a, b) ∈ f'.val.image _
       rwa [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage]
     · change _ ⊆ f'.val.image _
-      rw [← Finset.coe_subset, Finset.coe_image, ← Equiv.subset_image]
+      rw [← Finset.coe_subset, Finset.coe_image, ← Equiv.symm_image_subset]
       change f.val.image _ ⊆ _ at hl 
       rwa [← Finset.coe_subset, Finset.coe_image] at hl 
 #align order.partial_iso.defined_at_right Order.PartialIso.definedAtRight
Diff
@@ -3,8 +3,8 @@ Copyright (c) 2020 David Wärn. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: David Wärn
 -/
-import Mathbin.Order.Ideal
-import Mathbin.Data.Finset.Lattice
+import Order.Ideal
+import Data.Finset.Lattice
 
 #align_import order.countable_dense_linear_order from "leanprover-community/mathlib"@"4c19a16e4b705bf135cf9a80ac18fcc99c438514"
 
@@ -73,7 +73,7 @@ theorem exists_between_finsets {α : Type _} [LinearOrder α] [DenselyOrdered α
 
 variable (α β : Type _) [LinearOrder α] [LinearOrder β]
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (p q «expr ∈ » f) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (p q «expr ∈ » f) -/
 #print Order.PartialIso /-
 /-- The type of partial order isomorphisms between `α` and `β` defined on finite subsets.
     A partial order isomorphism is encoded as a finite subset of `α × β`, consisting
Diff
@@ -2,15 +2,12 @@
 Copyright (c) 2020 David Wärn. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: David Wärn
-
-! This file was ported from Lean 3 source module order.countable_dense_linear_order
-! leanprover-community/mathlib commit 4c19a16e4b705bf135cf9a80ac18fcc99c438514
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Order.Ideal
 import Mathbin.Data.Finset.Lattice
 
+#align_import order.countable_dense_linear_order from "leanprover-community/mathlib"@"4c19a16e4b705bf135cf9a80ac18fcc99c438514"
+
 /-!
 # The back and forth method and countable dense linear orders
 
@@ -76,7 +73,7 @@ theorem exists_between_finsets {α : Type _} [LinearOrder α] [DenselyOrdered α
 
 variable (α β : Type _) [LinearOrder α] [LinearOrder β]
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (p q «expr ∈ » f) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (p q «expr ∈ » f) -/
 #print Order.PartialIso /-
 /-- The type of partial order isomorphisms between `α` and `β` defined on finite subsets.
     A partial order isomorphism is encoded as a finite subset of `α × β`, consisting
Diff
@@ -150,6 +150,7 @@ protected def comm : PartialIso α β → PartialIso β α :=
 
 variable (β)
 
+#print Order.PartialIso.definedAtLeft /-
 /-- The set of partial isomorphisms defined at `a : α`, together with a proof that any
     partial isomorphism can be extended to one defined at `a`. -/
 def definedAtLeft [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β] (a : α) :
@@ -168,9 +169,11 @@ def definedAtLeft [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty
     · exact a_b _ pf
     · exact f.prop _ pf _ qf
 #align order.partial_iso.defined_at_left Order.PartialIso.definedAtLeft
+-/
 
 variable (α) {β}
 
+#print Order.PartialIso.definedAtRight /-
 /-- The set of partial isomorphisms defined at `b : β`, together with a proof that any
     partial isomorphism can be extended to include `b`. We prove this by symmetry. -/
 def definedAtRight [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty α] (b : β) :
@@ -186,9 +189,11 @@ def definedAtRight [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty
       change f.val.image _ ⊆ _ at hl 
       rwa [← Finset.coe_subset, Finset.coe_image] at hl 
 #align order.partial_iso.defined_at_right Order.PartialIso.definedAtRight
+-/
 
 variable {α}
 
+#print Order.PartialIso.funOfIdeal /-
 /-- Given an ideal which intersects `defined_at_left β a`, pick `b : β` such that
     some partial function in the ideal maps `a` to `b`. -/
 def funOfIdeal [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β] (a : α)
@@ -196,7 +201,9 @@ def funOfIdeal [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β]
     (∃ f, f ∈ definedAtLeft β a ∧ f ∈ I) → { b // ∃ f ∈ I, (a, b) ∈ Subtype.val f } :=
   Classical.indefiniteDescription _ ∘ fun ⟨f, ⟨b, hb⟩, hf⟩ => ⟨b, f, hf, hb⟩
 #align order.partial_iso.fun_of_ideal Order.PartialIso.funOfIdeal
+-/
 
+#print Order.PartialIso.invOfIdeal /-
 /-- Given an ideal which intersects `defined_at_right α b`, pick `a : α` such that
     some partial function in the ideal maps `a` to `b`. -/
 def invOfIdeal [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty α] (b : β)
@@ -204,6 +211,7 @@ def invOfIdeal [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty α]
     (∃ f, f ∈ definedAtRight α b ∧ f ∈ I) → { a // ∃ f ∈ I, (a, b) ∈ Subtype.val f } :=
   Classical.indefiniteDescription _ ∘ fun ⟨f, ⟨a, ha⟩, hf⟩ => ⟨a, f, hf, ha⟩
 #align order.partial_iso.inv_of_ideal Order.PartialIso.invOfIdeal
+-/
 
 end PartialIso
 
@@ -211,6 +219,7 @@ open PartialIso
 
 variable (α β)
 
+#print Order.embedding_from_countable_to_dense /-
 /-- Any countable linear order embeds in any nontrivial dense linear order. -/
 theorem embedding_from_countable_to_dense [Encodable α] [DenselyOrdered β] [Nontrivial β] :
     Nonempty (α ↪o β) := by
@@ -228,7 +237,9 @@ theorem embedding_from_countable_to_dense [Encodable α] [DenselyOrdered β] [No
   rcases our_ideal.directed _ hf _ hg with ⟨m, hm, fm, gm⟩
   exact (lt_iff_lt_of_cmp_eq_cmp <| m.prop (a₁, _) (fm ha₁) (a₂, _) (gm ha₂)).mp
 #align order.embedding_from_countable_to_dense Order.embedding_from_countable_to_dense
+-/
 
+#print Order.iso_of_countable_dense /-
 /-- Any two countable dense, nonempty linear orders without endpoints are order isomorphic. -/
 theorem iso_of_countable_dense [Encodable α] [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α]
     [Nonempty α] [Encodable β] [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β] :
@@ -245,6 +256,7 @@ theorem iso_of_countable_dense [Encodable α] [DenselyOrdered α] [NoMinOrder α
       rcases our_ideal.directed _ hf _ hg with ⟨m, hm, fm, gm⟩
       exact m.prop (a, _) (fm ha) (_, b) (gm hb)⟩
 #align order.iso_of_countable_dense Order.iso_of_countable_dense
+-/
 
 end Order
 
Diff
@@ -76,7 +76,7 @@ theorem exists_between_finsets {α : Type _} [LinearOrder α] [DenselyOrdered α
 
 variable (α β : Type _) [LinearOrder α] [LinearOrder β]
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (p q «expr ∈ » f) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (p q «expr ∈ » f) -/
 #print Order.PartialIso /-
 /-- The type of partial order isomorphisms between `α` and `β` defined on finite subsets.
     A partial order isomorphism is encoded as a finite subset of `α × β`, consisting
Diff
@@ -114,10 +114,10 @@ theorem exists_across [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonem
       ∀ y ∈ (f.val.filter fun p : α × β => a < p.fst).image Prod.snd, x < y :=
     by
     intro x hx y hy
-    rw [Finset.mem_image] at hx hy
+    rw [Finset.mem_image] at hx hy 
     rcases hx with ⟨p, hp1, rfl⟩
     rcases hy with ⟨q, hq1, rfl⟩
-    rw [Finset.mem_filter] at hp1 hq1
+    rw [Finset.mem_filter] at hp1 hq1 
     rw [← lt_iff_lt_of_cmp_eq_cmp (f.prop _ hp1.1 _ hq1.1)]
     exact lt_trans hp1.right hq1.right
   cases' exists_between_finsets _ _ this with b hb
@@ -127,10 +127,10 @@ theorem exists_across [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonem
   cases' lt_or_gt_of_ne this with hl hr
   · have : p1 < a ∧ p2 < b :=
       ⟨hl, hb.1 _ (finset.mem_image.mpr ⟨(p1, p2), finset.mem_filter.mpr ⟨hp, hl⟩, rfl⟩)⟩
-    rw [← cmp_eq_lt_iff, ← cmp_eq_lt_iff] at this; cc
+    rw [← cmp_eq_lt_iff, ← cmp_eq_lt_iff] at this ; cc
   · have : a < p1 ∧ b < p2 :=
       ⟨hr, hb.2 _ (finset.mem_image.mpr ⟨(p1, p2), finset.mem_filter.mpr ⟨hp, hr⟩, rfl⟩)⟩
-    rw [← cmp_eq_gt_iff, ← cmp_eq_gt_iff] at this; cc
+    rw [← cmp_eq_gt_iff, ← cmp_eq_gt_iff] at this ; cc
 #align order.partial_iso.exists_across Order.PartialIso.exists_across
 -/
 
@@ -140,10 +140,10 @@ protected def comm : PartialIso α β → PartialIso β α :=
   Subtype.map (Finset.image (Equiv.prodComm _ _)) fun f hf p hp q hq =>
     Eq.symm <|
       hf ((Equiv.prodComm α β).symm p)
-        (by rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hp;
+        (by rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hp ;
           rwa [← Finset.mem_coe])
         ((Equiv.prodComm α β).symm q)
-        (by rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hq;
+        (by rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hq ;
           rwa [← Finset.mem_coe])
 #align order.partial_iso.comm Order.PartialIso.comm
 -/
@@ -161,7 +161,7 @@ def definedAtLeft [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty
     refine'
       ⟨⟨insert (a, b) f.val, fun p hp q hq => _⟩, ⟨b, Finset.mem_insert_self _ _⟩,
         Finset.subset_insert _ _⟩
-    rw [Finset.mem_insert] at hp hq
+    rw [Finset.mem_insert] at hp hq 
     rcases hp with (rfl | pf) <;> rcases hq with (rfl | qf)
     · simp only [cmp_self_eq_eq]
     · rw [cmp_eq_cmp_symm]; exact a_b _ qf
@@ -183,8 +183,8 @@ def definedAtRight [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty
       rwa [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage]
     · change _ ⊆ f'.val.image _
       rw [← Finset.coe_subset, Finset.coe_image, ← Equiv.subset_image]
-      change f.val.image _ ⊆ _ at hl
-      rwa [← Finset.coe_subset, Finset.coe_image] at hl
+      change f.val.image _ ⊆ _ at hl 
+      rwa [← Finset.coe_subset, Finset.coe_image] at hl 
 #align order.partial_iso.defined_at_right Order.PartialIso.definedAtRight
 
 variable {α}
Diff
@@ -39,10 +39,11 @@ back and forth, dense, countable, order
 
 noncomputable section
 
-open Classical
+open scoped Classical
 
 namespace Order
 
+#print Order.exists_between_finsets /-
 /-- Suppose `α` is a nonempty dense linear order without endpoints, and
     suppose `lo`, `hi`, are finite subssets with all of `lo` strictly
     before `hi`. Then there is an element of `α` strictly between `lo`
@@ -71,6 +72,7 @@ theorem exists_between_finsets {α : Type _} [LinearOrder α] [DenselyOrdered α
           nonem.elim
         fun m => ⟨m, fun x hx => (nlo ⟨x, hx⟩).elim, fun y hy => (nhi ⟨y, hy⟩).elim⟩
 #align order.exists_between_finsets Order.exists_between_finsets
+-/
 
 variable (α β : Type _) [LinearOrder α] [LinearOrder β]
 
@@ -96,6 +98,7 @@ instance : Preorder (PartialIso α β) :=
 
 variable {α β}
 
+#print Order.PartialIso.exists_across /-
 /-- For each `a`, we can find a `b` in the codomain, such that `a`'s relation to
 the domain of `f` is `b`'s relation to the image of `f`.
 
@@ -129,6 +132,7 @@ theorem exists_across [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonem
       ⟨hr, hb.2 _ (finset.mem_image.mpr ⟨(p1, p2), finset.mem_filter.mpr ⟨hp, hr⟩, rfl⟩)⟩
     rw [← cmp_eq_gt_iff, ← cmp_eq_gt_iff] at this; cc
 #align order.partial_iso.exists_across Order.PartialIso.exists_across
+-/
 
 #print Order.PartialIso.comm /-
 /-- A partial isomorphism between `α` and `β` is also a partial isomorphism between `β` and `α`. -/
Diff
@@ -43,12 +43,6 @@ open Classical
 
 namespace Order
 
-/- warning: order.exists_between_finsets -> Order.exists_between_finsets is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_3 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_4 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [nonem : Nonempty.{succ u1} α] (lo : Finset.{u1} α) (hi : Finset.{u1} α), (forall (x : α), (Membership.Mem.{u1, u1} α (Finset.{u1} α) (Finset.hasMem.{u1} α) x lo) -> (forall (y : α), (Membership.Mem.{u1, u1} α (Finset.{u1} α) (Finset.hasMem.{u1} α) y hi) -> (LT.lt.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) x y))) -> (Exists.{succ u1} α (fun (m : α) => And (forall (x : α), (Membership.Mem.{u1, u1} α (Finset.{u1} α) (Finset.hasMem.{u1} α) x lo) -> (LT.lt.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) x m)) (forall (y : α), (Membership.Mem.{u1, u1} α (Finset.{u1} α) (Finset.hasMem.{u1} α) y hi) -> (LT.lt.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) m y))))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_3 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_4 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [nonem : Nonempty.{succ u1} α] (lo : Finset.{u1} α) (hi : Finset.{u1} α), (forall (x : α), (Membership.mem.{u1, u1} α (Finset.{u1} α) (Finset.instMembershipFinset.{u1} α) x lo) -> (forall (y : α), (Membership.mem.{u1, u1} α (Finset.{u1} α) (Finset.instMembershipFinset.{u1} α) y hi) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) x y))) -> (Exists.{succ u1} α (fun (m : α) => And (forall (x : α), (Membership.mem.{u1, u1} α (Finset.{u1} α) (Finset.instMembershipFinset.{u1} α) x lo) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) x m)) (forall (y : α), (Membership.mem.{u1, u1} α (Finset.{u1} α) (Finset.instMembershipFinset.{u1} α) y hi) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) m y))))
-Case conversion may be inaccurate. Consider using '#align order.exists_between_finsets Order.exists_between_finsetsₓ'. -/
 /-- Suppose `α` is a nonempty dense linear order without endpoints, and
     suppose `lo`, `hi`, are finite subssets with all of `lo` strictly
     before `hi`. Then there is an element of `α` strictly between `lo`
@@ -102,9 +96,6 @@ instance : Preorder (PartialIso α β) :=
 
 variable {α β}
 
-/- warning: order.partial_iso.exists_across -> Order.PartialIso.exists_across is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order.partial_iso.exists_across Order.PartialIso.exists_acrossₓ'. -/
 /-- For each `a`, we can find a `b` in the codomain, such that `a`'s relation to
 the domain of `f` is `b`'s relation to the image of `f`.
 
@@ -155,12 +146,6 @@ protected def comm : PartialIso α β → PartialIso β α :=
 
 variable (β)
 
-/- warning: order.partial_iso.defined_at_left -> Order.PartialIso.definedAtLeft is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} (β : Type.{u2}) [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_6 : Nonempty.{succ u2} β], α -> (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))
-but is expected to have type
-  forall {α : Type.{u1}} (β : Type.{u2}) [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_6 : Nonempty.{succ u2} β], α -> (Order.Cofinal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))
-Case conversion may be inaccurate. Consider using '#align order.partial_iso.defined_at_left Order.PartialIso.definedAtLeftₓ'. -/
 /-- The set of partial isomorphisms defined at `a : α`, together with a proof that any
     partial isomorphism can be extended to one defined at `a`. -/
 def definedAtLeft [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β] (a : α) :
@@ -182,12 +167,6 @@ def definedAtLeft [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty
 
 variable (α) {β}
 
-/- warning: order.partial_iso.defined_at_right -> Order.PartialIso.definedAtRight is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_4 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_5 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_6 : Nonempty.{succ u1} α], β -> (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))
-but is expected to have type
-  forall (α : Type.{u1}) {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_4 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_5 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_6 : Nonempty.{succ u1} α], β -> (Order.Cofinal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))
-Case conversion may be inaccurate. Consider using '#align order.partial_iso.defined_at_right Order.PartialIso.definedAtRightₓ'. -/
 /-- The set of partial isomorphisms defined at `b : β`, together with a proof that any
     partial isomorphism can be extended to include `b`. We prove this by symmetry. -/
 def definedAtRight [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty α] (b : β) :
@@ -206,9 +185,6 @@ def definedAtRight [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty
 
 variable {α}
 
-/- warning: order.partial_iso.fun_of_ideal -> Order.PartialIso.funOfIdeal is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order.partial_iso.fun_of_ideal Order.PartialIso.funOfIdealₓ'. -/
 /-- Given an ideal which intersects `defined_at_left β a`, pick `b : β` such that
     some partial function in the ideal maps `a` to `b`. -/
 def funOfIdeal [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β] (a : α)
@@ -217,9 +193,6 @@ def funOfIdeal [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β]
   Classical.indefiniteDescription _ ∘ fun ⟨f, ⟨b, hb⟩, hf⟩ => ⟨b, f, hf, hb⟩
 #align order.partial_iso.fun_of_ideal Order.PartialIso.funOfIdeal
 
-/- warning: order.partial_iso.inv_of_ideal -> Order.PartialIso.invOfIdeal is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order.partial_iso.inv_of_ideal Order.PartialIso.invOfIdealₓ'. -/
 /-- Given an ideal which intersects `defined_at_right α b`, pick `a : α` such that
     some partial function in the ideal maps `a` to `b`. -/
 def invOfIdeal [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty α] (b : β)
@@ -234,12 +207,6 @@ open PartialIso
 
 variable (α β)
 
-/- warning: order.embedding_from_countable_to_dense -> Order.embedding_from_countable_to_dense is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) (β : Type.{u2}) [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : Encodable.{u1} α] [_inst_4 : DenselyOrdered.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_5 : Nontrivial.{u2} β], Nonempty.{max (succ u1) (succ u2)} (OrderEmbedding.{u1, u2} α β (Preorder.toHasLe.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (Preorder.toHasLe.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))))
-but is expected to have type
-  forall (α : Type.{u2}) (β : Type.{u1}) [_inst_1 : LinearOrder.{u2} α] [_inst_2 : LinearOrder.{u1} β] [_inst_3 : Encodable.{u2} α] [_inst_4 : DenselyOrdered.{u1} β (Preorder.toLT.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2))))))] [_inst_5 : Nontrivial.{u1} β], Nonempty.{max (succ u1) (succ u2)} (OrderEmbedding.{u2, u1} α β (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α _inst_1)))))) (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2)))))))
-Case conversion may be inaccurate. Consider using '#align order.embedding_from_countable_to_dense Order.embedding_from_countable_to_denseₓ'. -/
 /-- Any countable linear order embeds in any nontrivial dense linear order. -/
 theorem embedding_from_countable_to_dense [Encodable α] [DenselyOrdered β] [Nontrivial β] :
     Nonempty (α ↪o β) := by
@@ -258,12 +225,6 @@ theorem embedding_from_countable_to_dense [Encodable α] [DenselyOrdered β] [No
   exact (lt_iff_lt_of_cmp_eq_cmp <| m.prop (a₁, _) (fm ha₁) (a₂, _) (gm ha₂)).mp
 #align order.embedding_from_countable_to_dense Order.embedding_from_countable_to_dense
 
-/- warning: order.iso_of_countable_dense -> Order.iso_of_countable_dense is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) (β : Type.{u2}) [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : Encodable.{u1} α] [_inst_4 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_5 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_6 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_7 : Nonempty.{succ u1} α] [_inst_8 : Encodable.{u2} β] [_inst_9 : DenselyOrdered.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_10 : NoMinOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_11 : NoMaxOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_12 : Nonempty.{succ u2} β], Nonempty.{max (succ u1) (succ u2)} (OrderIso.{u1, u2} α β (Preorder.toHasLe.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (Preorder.toHasLe.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))))
-but is expected to have type
-  forall (α : Type.{u2}) (β : Type.{u1}) [_inst_1 : LinearOrder.{u2} α] [_inst_2 : LinearOrder.{u1} β] [_inst_3 : Encodable.{u2} α] [_inst_4 : DenselyOrdered.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α _inst_1))))))] [_inst_5 : NoMinOrder.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α _inst_1))))))] [_inst_6 : NoMaxOrder.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α _inst_1))))))] [_inst_7 : Nonempty.{succ u2} α] [_inst_8 : Encodable.{u1} β] [_inst_9 : DenselyOrdered.{u1} β (Preorder.toLT.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2))))))] [_inst_10 : NoMinOrder.{u1} β (Preorder.toLT.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2))))))] [_inst_11 : NoMaxOrder.{u1} β (Preorder.toLT.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2))))))] [_inst_12 : Nonempty.{succ u1} β], Nonempty.{max (succ u1) (succ u2)} (OrderIso.{u2, u1} α β (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α _inst_1)))))) (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2)))))))
-Case conversion may be inaccurate. Consider using '#align order.iso_of_countable_dense Order.iso_of_countable_denseₓ'. -/
 /-- Any two countable dense, nonempty linear orders without endpoints are order isomorphic. -/
 theorem iso_of_countable_dense [Encodable α] [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α]
     [Nonempty α] [Encodable β] [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β] :
Diff
@@ -114,8 +114,7 @@ theorem exists_across [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonem
     (f : PartialIso α β) (a : α) : ∃ b : β, ∀ p ∈ f.val, cmp (Prod.fst p) a = cmp (Prod.snd p) b :=
   by
   by_cases h : ∃ b, (a, b) ∈ f.val
-  · cases' h with b hb
-    exact ⟨b, fun p hp => f.prop _ hp _ hb⟩
+  · cases' h with b hb; exact ⟨b, fun p hp => f.prop _ hp _ hb⟩
   have :
     ∀ x ∈ (f.val.filter fun p : α × β => p.fst < a).image Prod.snd,
       ∀ y ∈ (f.val.filter fun p : α × β => a < p.fst).image Prod.snd, x < y :=
@@ -134,12 +133,10 @@ theorem exists_across [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonem
   cases' lt_or_gt_of_ne this with hl hr
   · have : p1 < a ∧ p2 < b :=
       ⟨hl, hb.1 _ (finset.mem_image.mpr ⟨(p1, p2), finset.mem_filter.mpr ⟨hp, hl⟩, rfl⟩)⟩
-    rw [← cmp_eq_lt_iff, ← cmp_eq_lt_iff] at this
-    cc
+    rw [← cmp_eq_lt_iff, ← cmp_eq_lt_iff] at this; cc
   · have : a < p1 ∧ b < p2 :=
       ⟨hr, hb.2 _ (finset.mem_image.mpr ⟨(p1, p2), finset.mem_filter.mpr ⟨hp, hr⟩, rfl⟩)⟩
-    rw [← cmp_eq_gt_iff, ← cmp_eq_gt_iff] at this
-    cc
+    rw [← cmp_eq_gt_iff, ← cmp_eq_gt_iff] at this; cc
 #align order.partial_iso.exists_across Order.PartialIso.exists_across
 
 #print Order.PartialIso.comm /-
@@ -148,12 +145,10 @@ protected def comm : PartialIso α β → PartialIso β α :=
   Subtype.map (Finset.image (Equiv.prodComm _ _)) fun f hf p hp q hq =>
     Eq.symm <|
       hf ((Equiv.prodComm α β).symm p)
-        (by
-          rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hp
+        (by rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hp;
           rwa [← Finset.mem_coe])
         ((Equiv.prodComm α β).symm q)
-        (by
-          rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hq
+        (by rw [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage] at hq;
           rwa [← Finset.mem_coe])
 #align order.partial_iso.comm Order.PartialIso.comm
 -/
@@ -180,8 +175,7 @@ def definedAtLeft [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty
     rw [Finset.mem_insert] at hp hq
     rcases hp with (rfl | pf) <;> rcases hq with (rfl | qf)
     · simp only [cmp_self_eq_eq]
-    · rw [cmp_eq_cmp_symm]
-      exact a_b _ qf
+    · rw [cmp_eq_cmp_symm]; exact a_b _ qf
     · exact a_b _ pf
     · exact f.prop _ pf _ qf
 #align order.partial_iso.defined_at_left Order.PartialIso.definedAtLeft
Diff
@@ -103,10 +103,7 @@ instance : Preorder (PartialIso α β) :=
 variable {α β}
 
 /- warning: order.partial_iso.exists_across -> Order.PartialIso.exists_across is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_6 : Nonempty.{succ u2} β] (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (a : α), Exists.{succ u2} β (fun (b : β) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p (Subtype.val.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) a) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) b)))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_6 : Nonempty.{succ u2} β] (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (a : α), Exists.{succ u2} β (fun (b : β) => forall (p : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) p (Subtype.val.{max (succ u1) (succ u2)} (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u2 u1} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) (fun (a : α) (b : α) => instDecidableLtToLTToPreorderToPartialOrder.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2)))))) (fun (a : β) (b : β) => instDecidableLtToLTToPreorderToPartialOrder.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) (fun (a : α) (b : α) => instDecidableLtToLTToPreorderToPartialOrder.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) a) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2)))))) (fun (a : β) (b : β) => instDecidableLtToLTToPreorderToPartialOrder.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) b)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align order.partial_iso.exists_across Order.PartialIso.exists_acrossₓ'. -/
 /-- For each `a`, we can find a `b` in the codomain, such that `a`'s relation to
 the domain of `f` is `b`'s relation to the image of `f`.
@@ -216,10 +213,7 @@ def definedAtRight [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty
 variable {α}
 
 /- warning: order.partial_iso.fun_of_ideal -> Order.PartialIso.funOfIdeal is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_6 : Nonempty.{succ u2} β] (a : α) (I : Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))), (Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) (Order.Cofinal.hasMem.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) f (Order.PartialIso.definedAtLeft.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 a)) (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I))) -> (Subtype.{succ u2} β (fun (b : β) => Exists.{succ (max u1 u2)} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (fun (f : Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) => Exists.{0} (Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) (fun (H : Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) => Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) (Prod.mk.{u1, u2} α β a b) (Subtype.val.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)))))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_6 : Nonempty.{succ u2} β] (a : α) (I : Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))), (Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.mem.{max u1 u2, max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Cofinal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)) (Order.Cofinal.instMembershipCofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)) f (Order.PartialIso.definedAtLeft.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 a)) (Membership.mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (SetLike.instMembership.{max u1 u2, max u1 u2} (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.instSetLikeIdeal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)))) f I))) -> (Subtype.{succ u2} β (fun (b : β) => Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (SetLike.instMembership.{max u1 u2, max u1 u2} (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.instSetLikeIdeal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)))) f I) (Membership.mem.{max u2 u1, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) (Prod.mk.{u1, u2} α β a b) (Subtype.val.{succ (max u1 u2)} (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u2 u1} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) (fun (a : α) (b : α) => instDecidableLtToLTToPreorderToPartialOrder.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2)))))) (fun (a : β) (b : β) => instDecidableLtToLTToPreorderToPartialOrder.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align order.partial_iso.fun_of_ideal Order.PartialIso.funOfIdealₓ'. -/
 /-- Given an ideal which intersects `defined_at_left β a`, pick `b : β` such that
     some partial function in the ideal maps `a` to `b`. -/
@@ -230,10 +224,7 @@ def funOfIdeal [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β]
 #align order.partial_iso.fun_of_ideal Order.PartialIso.funOfIdeal
 
 /- warning: order.partial_iso.inv_of_ideal -> Order.PartialIso.invOfIdeal is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_4 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_5 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_6 : Nonempty.{succ u1} α] (b : β) (I : Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))), (Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) (Order.Cofinal.hasMem.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) f (Order.PartialIso.definedAtRight.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 b)) (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I))) -> (Subtype.{succ u1} α (fun (a : α) => Exists.{succ (max u1 u2)} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (fun (f : Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) => Exists.{0} (Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) (fun (H : Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) => Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) (Prod.mk.{u1, u2} α β a b) (Subtype.val.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)))))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_4 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_5 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_6 : Nonempty.{succ u1} α] (b : β) (I : Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))), (Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Cofinal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)) (Order.Cofinal.instMembershipCofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)) f (Order.PartialIso.definedAtRight.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 b)) (Membership.mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (SetLike.instMembership.{max u1 u2, max u1 u2} (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.instSetLikeIdeal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)))) f I))) -> (Subtype.{succ u1} α (fun (a : α) => Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (SetLike.instMembership.{max u1 u2, max u1 u2} (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.instSetLikeIdeal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)))) f I) (Membership.mem.{max u2 u1, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u2 u1} (Prod.{u1, u2} α β)) (Prod.mk.{u1, u2} α β a b) (Subtype.val.{succ (max u1 u2)} (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u2 u1} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) (fun (a : α) (b : α) => instDecidableLtToLTToPreorderToPartialOrder.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2)))))) (fun (a : β) (b : β) => instDecidableLtToLTToPreorderToPartialOrder.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align order.partial_iso.inv_of_ideal Order.PartialIso.invOfIdealₓ'. -/
 /-- Given an ideal which intersects `defined_at_right α b`, pick `a : α` such that
     some partial function in the ideal maps `a` to `b`. -/
Diff
@@ -43,7 +43,12 @@ open Classical
 
 namespace Order
 
-#print Order.exists_between_finsets /-
+/- warning: order.exists_between_finsets -> Order.exists_between_finsets is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_3 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_4 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [nonem : Nonempty.{succ u1} α] (lo : Finset.{u1} α) (hi : Finset.{u1} α), (forall (x : α), (Membership.Mem.{u1, u1} α (Finset.{u1} α) (Finset.hasMem.{u1} α) x lo) -> (forall (y : α), (Membership.Mem.{u1, u1} α (Finset.{u1} α) (Finset.hasMem.{u1} α) y hi) -> (LT.lt.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) x y))) -> (Exists.{succ u1} α (fun (m : α) => And (forall (x : α), (Membership.Mem.{u1, u1} α (Finset.{u1} α) (Finset.hasMem.{u1} α) x lo) -> (LT.lt.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) x m)) (forall (y : α), (Membership.Mem.{u1, u1} α (Finset.{u1} α) (Finset.hasMem.{u1} α) y hi) -> (LT.lt.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) m y))))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_3 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_4 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [nonem : Nonempty.{succ u1} α] (lo : Finset.{u1} α) (hi : Finset.{u1} α), (forall (x : α), (Membership.mem.{u1, u1} α (Finset.{u1} α) (Finset.instMembershipFinset.{u1} α) x lo) -> (forall (y : α), (Membership.mem.{u1, u1} α (Finset.{u1} α) (Finset.instMembershipFinset.{u1} α) y hi) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) x y))) -> (Exists.{succ u1} α (fun (m : α) => And (forall (x : α), (Membership.mem.{u1, u1} α (Finset.{u1} α) (Finset.instMembershipFinset.{u1} α) x lo) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) x m)) (forall (y : α), (Membership.mem.{u1, u1} α (Finset.{u1} α) (Finset.instMembershipFinset.{u1} α) y hi) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) m y))))
+Case conversion may be inaccurate. Consider using '#align order.exists_between_finsets Order.exists_between_finsetsₓ'. -/
 /-- Suppose `α` is a nonempty dense linear order without endpoints, and
     suppose `lo`, `hi`, are finite subssets with all of `lo` strictly
     before `hi`. Then there is an element of `α` strictly between `lo`
@@ -72,7 +77,6 @@ theorem exists_between_finsets {α : Type _} [LinearOrder α] [DenselyOrdered α
           nonem.elim
         fun m => ⟨m, fun x hx => (nlo ⟨x, hx⟩).elim, fun y hy => (nhi ⟨y, hy⟩).elim⟩
 #align order.exists_between_finsets Order.exists_between_finsets
--/
 
 variable (α β : Type _) [LinearOrder α] [LinearOrder β]
 
@@ -98,7 +102,12 @@ instance : Preorder (PartialIso α β) :=
 
 variable {α β}
 
-#print Order.PartialIso.exists_across /-
+/- warning: order.partial_iso.exists_across -> Order.PartialIso.exists_across is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_6 : Nonempty.{succ u2} β] (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (a : α), Exists.{succ u2} β (fun (b : β) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p (Subtype.val.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) a) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) b)))
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_6 : Nonempty.{succ u2} β] (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (a : α), Exists.{succ u2} β (fun (b : β) => forall (p : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) p (Subtype.val.{max (succ u1) (succ u2)} (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u2 u1} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) (fun (a : α) (b : α) => instDecidableLtToLTToPreorderToPartialOrder.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2)))))) (fun (a : β) (b : β) => instDecidableLtToLTToPreorderToPartialOrder.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) (fun (a : α) (b : α) => instDecidableLtToLTToPreorderToPartialOrder.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) a) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2)))))) (fun (a : β) (b : β) => instDecidableLtToLTToPreorderToPartialOrder.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) b)))
+Case conversion may be inaccurate. Consider using '#align order.partial_iso.exists_across Order.PartialIso.exists_acrossₓ'. -/
 /-- For each `a`, we can find a `b` in the codomain, such that `a`'s relation to
 the domain of `f` is `b`'s relation to the image of `f`.
 
@@ -135,7 +144,6 @@ theorem exists_across [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonem
     rw [← cmp_eq_gt_iff, ← cmp_eq_gt_iff] at this
     cc
 #align order.partial_iso.exists_across Order.PartialIso.exists_across
--/
 
 #print Order.PartialIso.comm /-
 /-- A partial isomorphism between `α` and `β` is also a partial isomorphism between `β` and `α`. -/
@@ -157,7 +165,7 @@ variable (β)
 
 /- warning: order.partial_iso.defined_at_left -> Order.PartialIso.definedAtLeft is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} (β : Type.{u2}) [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_6 : Nonempty.{succ u2} β], α -> (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))
+  forall {α : Type.{u1}} (β : Type.{u2}) [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_6 : Nonempty.{succ u2} β], α -> (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))
 but is expected to have type
   forall {α : Type.{u1}} (β : Type.{u2}) [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_6 : Nonempty.{succ u2} β], α -> (Order.Cofinal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))
 Case conversion may be inaccurate. Consider using '#align order.partial_iso.defined_at_left Order.PartialIso.definedAtLeftₓ'. -/
@@ -185,7 +193,7 @@ variable (α) {β}
 
 /- warning: order.partial_iso.defined_at_right -> Order.PartialIso.definedAtRight is a dubious translation:
 lean 3 declaration is
-  forall (α : Type.{u1}) {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_4 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_5 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_6 : Nonempty.{succ u1} α], β -> (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))
+  forall (α : Type.{u1}) {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_4 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_5 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_6 : Nonempty.{succ u1} α], β -> (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))
 but is expected to have type
   forall (α : Type.{u1}) {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_4 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_5 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_6 : Nonempty.{succ u1} α], β -> (Order.Cofinal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))
 Case conversion may be inaccurate. Consider using '#align order.partial_iso.defined_at_right Order.PartialIso.definedAtRightₓ'. -/
@@ -209,7 +217,7 @@ variable {α}
 
 /- warning: order.partial_iso.fun_of_ideal -> Order.PartialIso.funOfIdeal is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_6 : Nonempty.{succ u2} β] (a : α) (I : Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))), (Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) (Order.Cofinal.hasMem.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) f (Order.PartialIso.definedAtLeft.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 a)) (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I))) -> (Subtype.{succ u2} β (fun (b : β) => Exists.{succ (max u1 u2)} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (fun (f : Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) => Exists.{0} (Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) (fun (H : Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) => Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) (Prod.mk.{u1, u2} α β a b) (Subtype.val.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)))))
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_6 : Nonempty.{succ u2} β] (a : α) (I : Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))), (Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) (Order.Cofinal.hasMem.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) f (Order.PartialIso.definedAtLeft.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 a)) (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I))) -> (Subtype.{succ u2} β (fun (b : β) => Exists.{succ (max u1 u2)} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (fun (f : Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) => Exists.{0} (Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) (fun (H : Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) => Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) (Prod.mk.{u1, u2} α β a b) (Subtype.val.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)))))
 but is expected to have type
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_4 : NoMinOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_5 : NoMaxOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2))))))] [_inst_6 : Nonempty.{succ u2} β] (a : α) (I : Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))), (Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.mem.{max u1 u2, max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Cofinal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)) (Order.Cofinal.instMembershipCofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)) f (Order.PartialIso.definedAtLeft.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 a)) (Membership.mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (SetLike.instMembership.{max u1 u2, max u1 u2} (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.instSetLikeIdeal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)))) f I))) -> (Subtype.{succ u2} β (fun (b : β) => Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (SetLike.instMembership.{max u1 u2, max u1 u2} (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.instSetLikeIdeal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)))) f I) (Membership.mem.{max u2 u1, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) (Prod.mk.{u1, u2} α β a b) (Subtype.val.{succ (max u1 u2)} (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u2 u1} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) (fun (a : α) (b : α) => instDecidableLtToLTToPreorderToPartialOrder.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2)))))) (fun (a : β) (b : β) => instDecidableLtToLTToPreorderToPartialOrder.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)))))
 Case conversion may be inaccurate. Consider using '#align order.partial_iso.fun_of_ideal Order.PartialIso.funOfIdealₓ'. -/
@@ -223,7 +231,7 @@ def funOfIdeal [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β]
 
 /- warning: order.partial_iso.inv_of_ideal -> Order.PartialIso.invOfIdeal is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_4 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_5 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_6 : Nonempty.{succ u1} α] (b : β) (I : Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))), (Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) (Order.Cofinal.hasMem.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) f (Order.PartialIso.definedAtRight.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 b)) (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I))) -> (Subtype.{succ u1} α (fun (a : α) => Exists.{succ (max u1 u2)} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (fun (f : Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) => Exists.{0} (Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) (fun (H : Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) => Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) (Prod.mk.{u1, u2} α β a b) (Subtype.val.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)))))
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_4 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_5 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_6 : Nonempty.{succ u1} α] (b : β) (I : Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))), (Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Cofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) (Order.Cofinal.hasMem.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)) f (Order.PartialIso.definedAtRight.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 b)) (Membership.Mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I))) -> (Subtype.{succ u1} α (fun (a : α) => Exists.{succ (max u1 u2)} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (fun (f : Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) => Exists.{0} (Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) (fun (H : Membership.Mem.{max u1 u2, max u1 u2} (Subtype.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q)))))) (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (SetLike.hasMem.{max u1 u2, max u1 u2} (Order.Ideal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.setLike.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toHasLe.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.preorder.{u1, u2} α β _inst_1 _inst_2)))) f I) => Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) (Prod.mk.{u1, u2} α β a b) (Subtype.val.{succ (max u1 u2)} (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u1 u2} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.Mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u1 u2} (Prod.{u1, u2} α β)) (Finset.hasMem.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (fun (a : α) (b : α) => LT.lt.decidable.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))) (fun (a : β) (b : β) => LT.lt.decidable.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)))))
 but is expected to have type
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_4 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_5 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1))))))] [_inst_6 : Nonempty.{succ u1} α] (b : β) (I : Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))), (Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Cofinal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)) (Order.Cofinal.instMembershipCofinal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)) f (Order.PartialIso.definedAtRight.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 b)) (Membership.mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (SetLike.instMembership.{max u1 u2, max u1 u2} (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.instSetLikeIdeal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)))) f I))) -> (Subtype.{succ u1} α (fun (a : α) => Exists.{succ (max u1 u2)} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (fun (f : Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) => And (Membership.mem.{max u1 u2, max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (SetLike.instMembership.{max u1 u2, max u1 u2} (Order.Ideal.{max u2 u1} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2))) (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.Ideal.instSetLikeIdeal.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Preorder.toLE.{max u1 u2} (Order.PartialIso.{u1, u2} α β _inst_1 _inst_2) (Order.PartialIso.instPreorderPartialIso.{u1, u2} α β _inst_1 _inst_2)))) f I) (Membership.mem.{max u2 u1, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u2 u1} (Prod.{u1, u2} α β)) (Prod.mk.{u1, u2} α β a b) (Subtype.val.{succ (max u1 u2)} (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (fun (f : Finset.{max u2 u1} (Prod.{u1, u2} α β)) => forall (p : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) p f) -> (forall (q : Prod.{u1, u2} α β), (Membership.mem.{max u1 u2, max u1 u2} (Prod.{u1, u2} α β) (Finset.{max u2 u1} (Prod.{u1, u2} α β)) (Finset.instMembershipFinset.{max u1 u2} (Prod.{u1, u2} α β)) q f) -> (Eq.{1} Ordering (cmp.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α (instDistribLattice.{u1} α _inst_1)))))) (fun (a : α) (b : α) => instDecidableLtToLTToPreorderToPartialOrder.{u1} α _inst_1 a b) (Prod.fst.{u1, u2} α β p) (Prod.fst.{u1, u2} α β q)) (cmp.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (DistribLattice.toLattice.{u2} β (instDistribLattice.{u2} β _inst_2)))))) (fun (a : β) (b : β) => instDecidableLtToLTToPreorderToPartialOrder.{u2} β _inst_2 a b) (Prod.snd.{u1, u2} α β p) (Prod.snd.{u1, u2} α β q))))) f)))))
 Case conversion may be inaccurate. Consider using '#align order.partial_iso.inv_of_ideal Order.PartialIso.invOfIdealₓ'. -/
@@ -243,7 +251,7 @@ variable (α β)
 
 /- warning: order.embedding_from_countable_to_dense -> Order.embedding_from_countable_to_dense is a dubious translation:
 lean 3 declaration is
-  forall (α : Type.{u1}) (β : Type.{u2}) [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : Encodable.{u1} α] [_inst_4 : DenselyOrdered.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_5 : Nontrivial.{u2} β], Nonempty.{max (succ u1) (succ u2)} (OrderEmbedding.{u1, u2} α β (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))))
+  forall (α : Type.{u1}) (β : Type.{u2}) [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : Encodable.{u1} α] [_inst_4 : DenselyOrdered.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_5 : Nontrivial.{u2} β], Nonempty.{max (succ u1) (succ u2)} (OrderEmbedding.{u1, u2} α β (Preorder.toHasLe.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (Preorder.toHasLe.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))))
 but is expected to have type
   forall (α : Type.{u2}) (β : Type.{u1}) [_inst_1 : LinearOrder.{u2} α] [_inst_2 : LinearOrder.{u1} β] [_inst_3 : Encodable.{u2} α] [_inst_4 : DenselyOrdered.{u1} β (Preorder.toLT.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2))))))] [_inst_5 : Nontrivial.{u1} β], Nonempty.{max (succ u1) (succ u2)} (OrderEmbedding.{u2, u1} α β (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α _inst_1)))))) (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2)))))))
 Case conversion may be inaccurate. Consider using '#align order.embedding_from_countable_to_dense Order.embedding_from_countable_to_denseₓ'. -/
@@ -267,7 +275,7 @@ theorem embedding_from_countable_to_dense [Encodable α] [DenselyOrdered β] [No
 
 /- warning: order.iso_of_countable_dense -> Order.iso_of_countable_dense is a dubious translation:
 lean 3 declaration is
-  forall (α : Type.{u1}) (β : Type.{u2}) [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : Encodable.{u1} α] [_inst_4 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_5 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_6 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_7 : Nonempty.{succ u1} α] [_inst_8 : Encodable.{u2} β] [_inst_9 : DenselyOrdered.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_10 : NoMinOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_11 : NoMaxOrder.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_12 : Nonempty.{succ u2} β], Nonempty.{max (succ u1) (succ u2)} (OrderIso.{u1, u2} α β (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))))
+  forall (α : Type.{u1}) (β : Type.{u2}) [_inst_1 : LinearOrder.{u1} α] [_inst_2 : LinearOrder.{u2} β] [_inst_3 : Encodable.{u1} α] [_inst_4 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_5 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_6 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1)))))] [_inst_7 : Nonempty.{succ u1} α] [_inst_8 : Encodable.{u2} β] [_inst_9 : DenselyOrdered.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_10 : NoMinOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_11 : NoMaxOrder.{u2} β (Preorder.toHasLt.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2)))))] [_inst_12 : Nonempty.{succ u2} β], Nonempty.{max (succ u1) (succ u2)} (OrderIso.{u1, u2} α β (Preorder.toHasLe.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (LinearOrder.toLattice.{u1} α _inst_1))))) (Preorder.toHasLe.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (LinearOrder.toLattice.{u2} β _inst_2))))))
 but is expected to have type
   forall (α : Type.{u2}) (β : Type.{u1}) [_inst_1 : LinearOrder.{u2} α] [_inst_2 : LinearOrder.{u1} β] [_inst_3 : Encodable.{u2} α] [_inst_4 : DenselyOrdered.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α _inst_1))))))] [_inst_5 : NoMinOrder.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α _inst_1))))))] [_inst_6 : NoMaxOrder.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α _inst_1))))))] [_inst_7 : Nonempty.{succ u2} α] [_inst_8 : Encodable.{u1} β] [_inst_9 : DenselyOrdered.{u1} β (Preorder.toLT.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2))))))] [_inst_10 : NoMinOrder.{u1} β (Preorder.toLT.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2))))))] [_inst_11 : NoMaxOrder.{u1} β (Preorder.toLT.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2))))))] [_inst_12 : Nonempty.{succ u1} β], Nonempty.{max (succ u1) (succ u2)} (OrderIso.{u2, u1} α β (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α _inst_1)))))) (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (DistribLattice.toLattice.{u1} β (instDistribLattice.{u1} β _inst_2)))))))
 Case conversion may be inaccurate. Consider using '#align order.iso_of_countable_dense Order.iso_of_countable_denseₓ'. -/
Diff
@@ -76,7 +76,7 @@ theorem exists_between_finsets {α : Type _} [LinearOrder α] [DenselyOrdered α
 
 variable (α β : Type _) [LinearOrder α] [LinearOrder β]
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (p q «expr ∈ » f) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (p q «expr ∈ » f) -/
 #print Order.PartialIso /-
 /-- The type of partial order isomorphisms between `α` and `β` defined on finite subsets.
     A partial order isomorphism is encoded as a finite subset of `α × β`, consisting

Changes in mathlib4

mathlib3
mathlib4
style: fix references to DenselyOrdered (#11897)

Rename occurrences of "densely_ordered" to "denselyOrdered"

Co-authored-by: sven-manthe <147848313+sven-manthe@users.noreply.github.com>

Diff
@@ -46,7 +46,7 @@ theorem exists_between_finsets {α : Type*} [LinearOrder α] [DenselyOrdered α]
     ∃ m : α, (∀ x ∈ lo, x < m) ∧ ∀ y ∈ hi, m < y :=
   if nlo : lo.Nonempty then
     if nhi : hi.Nonempty then
-      -- both sets are nonempty, use densely_ordered
+      -- both sets are nonempty, use `DenselyOrdered`
         Exists.elim
         (exists_between (lo_lt_hi _ (Finset.max'_mem _ nlo) _ (Finset.min'_mem _ nhi))) fun m hm ↦
         ⟨m, fun x hx ↦ lt_of_le_of_lt (Finset.le_max' lo x hx) hm.1, fun y hy ↦
@@ -61,7 +61,7 @@ theorem exists_between_finsets {α : Type*} [LinearOrder α] [DenselyOrdered α]
         Exists.elim
         (exists_lt (Finset.min' hi nhi)) fun m hm ↦
         ⟨m, fun x hx ↦ (nlo ⟨x, hx⟩).elim, fun y hy ↦ lt_of_lt_of_le hm (Finset.min'_le hi y hy)⟩
-    else-- both sets are empty, use nonempty
+    else -- both sets are empty, use `Nonempty`
           nonem.elim
         fun m ↦ ⟨m, fun x hx ↦ (nlo ⟨x, hx⟩).elim, fun y hy ↦ (nhi ⟨y, hy⟩).elim⟩
 #align order.exists_between_finsets Order.exists_between_finsets
chore: scope open Classical (#11199)

We remove all but one open Classicals, instead preferring to use open scoped Classical. The only real side-effect this led to is moving a couple declarations to use Exists.choose instead of Classical.choose.

The first few commits are explicitly labelled regex replaces for ease of review.

Diff
@@ -33,7 +33,7 @@ back and forth, dense, countable, order
 
 noncomputable section
 
-open Classical
+open scoped Classical
 
 namespace Order
 
chore(CountableDenseLinearOrder): Encodable -> Countable (#10308)
Diff
@@ -199,8 +199,9 @@ open PartialIso
 -- variable (α β)
 
 /-- Any countable linear order embeds in any nontrivial dense linear order. -/
-theorem embedding_from_countable_to_dense [Encodable α] [DenselyOrdered β] [Nontrivial β] :
+theorem embedding_from_countable_to_dense [Countable α] [DenselyOrdered β] [Nontrivial β] :
     Nonempty (α ↪o β) := by
+  cases nonempty_encodable α
   rcases exists_pair_lt β with ⟨x, y, hxy⟩
   cases' exists_between hxy with a ha
   haveI : Nonempty (Set.Ioo x y) := ⟨⟨a, ha⟩⟩
@@ -217,15 +218,17 @@ theorem embedding_from_countable_to_dense [Encodable α] [DenselyOrdered β] [No
 #align order.embedding_from_countable_to_dense Order.embedding_from_countable_to_dense
 
 /-- Any two countable dense, nonempty linear orders without endpoints are order isomorphic. -/
-theorem iso_of_countable_dense [Encodable α] [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α]
-    [Nonempty α] [Encodable β] [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β] :
-    Nonempty (α ≃o β) :=
+theorem iso_of_countable_dense [Countable α] [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α]
+    [Nonempty α] [Countable β] [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β] :
+    Nonempty (α ≃o β) := by
+  cases nonempty_encodable α
+  cases nonempty_encodable β
   let to_cofinal : Sum α β → Cofinal (PartialIso α β) := fun p ↦
     Sum.recOn p (definedAtLeft β) (definedAtRight α)
   let our_ideal : Ideal (PartialIso α β) := idealOfCofinals default to_cofinal
   let F a := funOfIdeal a our_ideal (cofinal_meets_idealOfCofinals _ to_cofinal (Sum.inl a))
   let G b := invOfIdeal b our_ideal (cofinal_meets_idealOfCofinals _ to_cofinal (Sum.inr b))
-  ⟨OrderIso.ofCmpEqCmp (fun a ↦ (F a).val) (fun b ↦ (G b).val) fun a b ↦ by
+  exact ⟨OrderIso.ofCmpEqCmp (fun a ↦ (F a).val) (fun b ↦ (G b).val) fun a b ↦ by
       rcases (F a).prop with ⟨f, hf, ha⟩
       rcases (G b).prop with ⟨g, hg, hb⟩
       rcases our_ideal.directed _ hf _ hg with ⟨m, _, fm, gm⟩
chore: rename Equiv.subset_image (#9800)

Finset versions of the renamed lemmas are also added.

Diff
@@ -170,7 +170,7 @@ def definedAtRight [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty
     · change (a, b) ∈ f'.val.image _
       rwa [← Finset.mem_coe, Finset.coe_image, Equiv.image_eq_preimage]
     · change _ ⊆ f'.val.image _
-      rwa [← Finset.coe_subset, Finset.coe_image, ← Equiv.subset_image, ← Finset.coe_image,
+      rwa [← Finset.coe_subset, Finset.coe_image, ← Equiv.symm_image_subset, ← Finset.coe_image,
         Finset.coe_subset]
 #align order.partial_iso.defined_at_right Order.PartialIso.definedAtRight
 
chore(*): use ∃ x ∈ s, _ instead of ∃ (x) (_ : x ∈ s), _ (#9215)

Follow-up #9184

Diff
@@ -74,7 +74,7 @@ variable (α β : Type*) [LinearOrder α] [LinearOrder β]
     of pairs which should be identified. -/
 def PartialIso : Type _ :=
   { f : Finset (α × β) //
-    ∀ (p) (_ : p ∈ f) (q) (_ : q ∈ f),
+    ∀ p ∈ f, ∀ q ∈ f,
       cmp (Prod.fst p) (Prod.fst q) = cmp (Prod.snd p) (Prod.snd q) }
 #align order.partial_iso Order.PartialIso
 
chore: missing spaces after rcases, convert and congrm (#7725)

Replace rcases( with rcases (. Same thing for convert( and congrm(. No other change.

Diff
@@ -210,8 +210,8 @@ theorem embedding_from_countable_to_dense [Encodable α] [DenselyOrdered β] [No
   refine
     ⟨RelEmbedding.trans (OrderEmbedding.ofStrictMono (fun a ↦ (F a).val) fun a₁ a₂ ↦ ?_)
         (OrderEmbedding.subtype _)⟩
-  rcases(F a₁).prop with ⟨f, hf, ha₁⟩
-  rcases(F a₂).prop with ⟨g, hg, ha₂⟩
+  rcases (F a₁).prop with ⟨f, hf, ha₁⟩
+  rcases (F a₂).prop with ⟨g, hg, ha₂⟩
   rcases our_ideal.directed _ hf _ hg with ⟨m, _hm, fm, gm⟩
   exact (lt_iff_lt_of_cmp_eq_cmp <| m.prop (a₁, _) (fm ha₁) (a₂, _) (gm ha₂)).mp
 #align order.embedding_from_countable_to_dense Order.embedding_from_countable_to_dense
@@ -226,8 +226,8 @@ theorem iso_of_countable_dense [Encodable α] [DenselyOrdered α] [NoMinOrder α
   let F a := funOfIdeal a our_ideal (cofinal_meets_idealOfCofinals _ to_cofinal (Sum.inl a))
   let G b := invOfIdeal b our_ideal (cofinal_meets_idealOfCofinals _ to_cofinal (Sum.inr b))
   ⟨OrderIso.ofCmpEqCmp (fun a ↦ (F a).val) (fun b ↦ (G b).val) fun a b ↦ by
-      rcases(F a).prop with ⟨f, hf, ha⟩
-      rcases(G b).prop with ⟨g, hg, hb⟩
+      rcases (F a).prop with ⟨f, hf, ha⟩
+      rcases (G b).prop with ⟨g, hg, hb⟩
       rcases our_ideal.directed _ hf _ hg with ⟨m, _, fm, gm⟩
       exact m.prop (a, _) (fm ha) (_, b) (gm hb)⟩
 #align order.iso_of_countable_dense Order.iso_of_countable_dense
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
@@ -41,7 +41,7 @@ namespace Order
     suppose `lo`, `hi`, are finite subsets with all of `lo` strictly
     before `hi`. Then there is an element of `α` strictly between `lo`
     and `hi`. -/
-theorem exists_between_finsets {α : Type _} [LinearOrder α] [DenselyOrdered α] [NoMinOrder α]
+theorem exists_between_finsets {α : Type*} [LinearOrder α] [DenselyOrdered α] [NoMinOrder α]
     [NoMaxOrder α] [nonem : Nonempty α] (lo hi : Finset α) (lo_lt_hi : ∀ x ∈ lo, ∀ y ∈ hi, x < y) :
     ∃ m : α, (∀ x ∈ lo, x < m) ∧ ∀ y ∈ hi, m < y :=
   if nlo : lo.Nonempty then
@@ -66,7 +66,7 @@ theorem exists_between_finsets {α : Type _} [LinearOrder α] [DenselyOrdered α
         fun m ↦ ⟨m, fun x hx ↦ (nlo ⟨x, hx⟩).elim, fun y hy ↦ (nhi ⟨y, hy⟩).elim⟩
 #align order.exists_between_finsets Order.exists_between_finsets
 
-variable (α β : Type _) [LinearOrder α] [LinearOrder β]
+variable (α β : Type*) [LinearOrder α] [LinearOrder β]
 
 -- Porting note: Mathport warning: expanding binder collection (p q «expr ∈ » f)
 /-- The type of partial order isomorphisms between `α` and `β` defined on finite subsets.
chore: fix some Set defeq abuse, golf (#6114)
  • Use {x | p x} instead of fun x ↦ p x to define a set here and there.
  • Golf some proofs.
  • Replace Con.ker_apply_eq_preimage with Con.ker_apply. The old version used to abuse definitional equality between Set M and M → Prop.
  • Fix Submonoid.mk* lemmas to use ⟨_, _⟩, not ⟨⟨_, _⟩, _⟩.
Diff
@@ -142,7 +142,7 @@ variable (β)
     partial isomorphism can be extended to one defined at `a`. -/
 def definedAtLeft [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β] (a : α) :
     Cofinal (PartialIso α β) where
-  carrier f := ∃ b : β, (a, b) ∈ f.val
+  carrier := {f | ∃ b : β, (a, b) ∈ f.val}
   mem_gt f := by
     cases' exists_across f a with b a_b
     refine
@@ -163,7 +163,7 @@ variable (α) {β}
     partial isomorphism can be extended to include `b`. We prove this by symmetry. -/
 def definedAtRight [DenselyOrdered α] [NoMinOrder α] [NoMaxOrder α] [Nonempty α] (b : β) :
     Cofinal (PartialIso α β) where
-  carrier f := ∃ a, (a, b) ∈ f.val
+  carrier := {f | ∃ a, (a, b) ∈ f.val}
   mem_gt f := by
     rcases (definedAtLeft α b).mem_gt f.comm with ⟨f', ⟨a, ha⟩, hl⟩
     refine' ⟨f'.comm, ⟨a, _⟩, _⟩
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,15 +2,12 @@
 Copyright (c) 2020 David Wärn. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: David Wärn
-
-! This file was ported from Lean 3 source module order.countable_dense_linear_order
-! leanprover-community/mathlib commit 2705404e701abc6b3127da906f40bae062a169c9
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Order.Ideal
 import Mathlib.Data.Finset.Lattice
 
+#align_import order.countable_dense_linear_order from "leanprover-community/mathlib"@"2705404e701abc6b3127da906f40bae062a169c9"
+
 /-!
 # The back and forth method and countable dense linear orders
 
chore: fix many typos (#4967)

These are all doc fixes

Diff
@@ -41,7 +41,7 @@ open Classical
 namespace Order
 
 /-- Suppose `α` is a nonempty dense linear order without endpoints, and
-    suppose `lo`, `hi`, are finite subssets with all of `lo` strictly
+    suppose `lo`, `hi`, are finite subsets with all of `lo` strictly
     before `hi`. Then there is an element of `α` strictly between `lo`
     and `hi`. -/
 theorem exists_between_finsets {α : Type _} [LinearOrder α] [DenselyOrdered α] [NoMinOrder α]
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
@@ -95,8 +95,8 @@ the domain of `f` is `b`'s relation to the image of `f`.
 Thus, if `a` is not already in `f`, then we can extend `f` by sending `a` to `b`.
 -/
 theorem exists_across [DenselyOrdered β] [NoMinOrder β] [NoMaxOrder β] [Nonempty β]
-    (f : PartialIso α β) (a : α) : ∃ b : β, ∀ p ∈ f.val, cmp (Prod.fst p) a = cmp (Prod.snd p) b :=
-  by
+    (f : PartialIso α β) (a : α) :
+    ∃ b : β, ∀ p ∈ f.val, cmp (Prod.fst p) a = cmp (Prod.snd p) b := by
   by_cases h : ∃ b, (a, b) ∈ f.val
   · cases' h with b hb
     exact ⟨b, fun p hp ↦ f.prop _ hp _ hb⟩
feat port : Order.CountableDenseLinearOrder (#2037)

Dependencies 2 + 202

203 files ported (99.0%)
90976 lines ported (99.8%)
Show graph

The unported dependencies are