order.copyMathlib.Order.Copy

This file has been ported!

Changes since the initial port

The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(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
@@ -3,7 +3,7 @@ Copyright (c) 2020 Johan Commelin. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johan Commelin
 -/
-import Mathbin.Order.ConditionallyCompleteLattice.Basic
+import Order.ConditionallyCompleteLattice.Basic
 
 #align_import order.copy from "leanprover-community/mathlib"@"c3291da49cfa65f0d43b094750541c0731edc932"
 
Diff
@@ -2,14 +2,11 @@
 Copyright (c) 2020 Johan Commelin. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johan Commelin
-
-! This file was ported from Lean 3 source module order.copy
-! leanprover-community/mathlib commit c3291da49cfa65f0d43b094750541c0731edc932
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Order.ConditionallyCompleteLattice.Basic
 
+#align_import order.copy from "leanprover-community/mathlib"@"c3291da49cfa65f0d43b094750541c0731edc932"
+
 /-!
 # Tooling to make copies of lattice structures
 
Diff
@@ -28,6 +28,7 @@ universe u
 
 variable {α : Type u}
 
+#print BoundedOrder.copy /-
 /-- A function to create a provable equal copy of a bounded order
 with possibly different definitional equalities. -/
 def BoundedOrder.copy {h : LE α} {h' : LE α} (c : @BoundedOrder α h') (top : α)
@@ -39,7 +40,9 @@ def BoundedOrder.copy {h : LE α} {h' : LE α} (c : @BoundedOrder α h') (top :
       bot .. }
   all_goals abstract subst_vars; cases c; simp_rw [le_eq]; assumption
 #align bounded_order.copy BoundedOrder.copy
+-/
 
+#print Lattice.copy /-
 /-- A function to create a provable equal copy of a lattice
 with possibly different definitional equalities. -/
 def Lattice.copy (c : Lattice α) (le : α → α → Prop) (eq_le : le = @Lattice.Le α c)
@@ -52,7 +55,9 @@ def Lattice.copy (c : Lattice α) (le : α → α → Prop) (eq_le : le = @Latti
       inf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align lattice.copy Lattice.copy
+-/
 
+#print DistribLattice.copy /-
 /-- A function to create a provable equal copy of a distributive lattice
 with possibly different definitional equalities. -/
 def DistribLattice.copy (c : DistribLattice α) (le : α → α → Prop)
@@ -65,7 +70,9 @@ def DistribLattice.copy (c : DistribLattice α) (le : α → α → Prop)
       inf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align distrib_lattice.copy DistribLattice.copy
+-/
 
+#print CompleteLattice.copy /-
 /-- A function to create a provable equal copy of a complete lattice
 with possibly different definitional equalities. -/
 def CompleteLattice.copy (c : CompleteLattice α) (le : α → α → Prop)
@@ -89,7 +96,9 @@ def CompleteLattice.copy (c : CompleteLattice α) (le : α → α → Prop)
       sInf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align complete_lattice.copy CompleteLattice.copy
+-/
 
+#print Frame.copy /-
 /-- A function to create a provable equal copy of a frame with possibly different definitional
 equalities. -/
 def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = @Frame.Le α c) (top : α)
@@ -111,7 +120,9 @@ def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = @Frame.Le
       sInf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align frame.copy Frame.copy
+-/
 
+#print Coframe.copy /-
 /-- A function to create a provable equal copy of a coframe with possibly different definitional
 equalities. -/
 def Coframe.copy (c : Coframe α) (le : α → α → Prop) (eq_le : le = @Coframe.Le α c) (top : α)
@@ -133,7 +144,9 @@ def Coframe.copy (c : Coframe α) (le : α → α → Prop) (eq_le : le = @Cofra
       sInf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align coframe.copy Coframe.copy
+-/
 
+#print CompleteDistribLattice.copy /-
 /-- A function to create a provable equal copy of a complete distributive lattice
 with possibly different definitional equalities. -/
 def CompleteDistribLattice.copy (c : CompleteDistribLattice α) (le : α → α → Prop)
@@ -150,7 +163,9 @@ def CompleteDistribLattice.copy (c : CompleteDistribLattice α) (le : α → α
     Coframe.copy (@CompleteDistribLattice.toCoframe α c) le eq_le top eq_top bot eq_bot sup eq_sup
       inf eq_inf Sup eq_Sup Inf eq_Inf with }
 #align complete_distrib_lattice.copy CompleteDistribLattice.copy
+-/
 
+#print ConditionallyCompleteLattice.copy /-
 /-- A function to create a provable equal copy of a conditionally complete lattice
 with possibly different definitional equalities. -/
 def ConditionallyCompleteLattice.copy (c : ConditionallyCompleteLattice α) (le : α → α → Prop)
@@ -168,4 +183,5 @@ def ConditionallyCompleteLattice.copy (c : ConditionallyCompleteLattice α) (le
       sInf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align conditionally_complete_lattice.copy ConditionallyCompleteLattice.copy
+-/
 
Diff
@@ -36,7 +36,7 @@ def BoundedOrder.copy {h : LE α} {h' : LE α} (c : @BoundedOrder α h') (top :
   by
   refine'
     { top
-      bot.. }
+      bot .. }
   all_goals abstract subst_vars; cases c; simp_rw [le_eq]; assumption
 #align bounded_order.copy BoundedOrder.copy
 
@@ -49,7 +49,7 @@ def Lattice.copy (c : Lattice α) (le : α → α → Prop) (eq_le : le = @Latti
   refine'
     { le
       sup
-      inf.. }
+      inf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align lattice.copy Lattice.copy
 
@@ -62,7 +62,7 @@ def DistribLattice.copy (c : DistribLattice α) (le : α → α → Prop)
   refine'
     { le
       sup
-      inf.. }
+      inf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align distrib_lattice.copy DistribLattice.copy
 
@@ -86,7 +86,7 @@ def CompleteLattice.copy (c : CompleteLattice α) (le : α → α → Prop)
       sup
       inf
       sSup
-      sInf.. }
+      sInf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align complete_lattice.copy CompleteLattice.copy
 
@@ -108,7 +108,7 @@ def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = @Frame.Le
       sup
       inf
       sSup
-      sInf.. }
+      sInf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align frame.copy Frame.copy
 
@@ -130,7 +130,7 @@ def Coframe.copy (c : Coframe α) (le : α → α → Prop) (eq_le : le = @Cofra
       sup
       inf
       sSup
-      sInf.. }
+      sInf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align coframe.copy Coframe.copy
 
@@ -165,7 +165,7 @@ def ConditionallyCompleteLattice.copy (c : ConditionallyCompleteLattice α) (le
       sup
       inf
       sSup
-      sInf.. }
+      sInf .. }
   all_goals abstract subst_vars; cases c; assumption
 #align conditionally_complete_lattice.copy ConditionallyCompleteLattice.copy
 
Diff
@@ -28,12 +28,6 @@ universe u
 
 variable {α : Type u}
 
-/- warning: bounded_order.copy -> BoundedOrder.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {h : LE.{u1} α} {h' : LE.{u1} α} (c : BoundedOrder.{u1} α h') (top : α), (Eq.{succ u1} α top (BoundedOrder.top.{u1} α h' c)) -> (forall (bot : α), (Eq.{succ u1} α bot (BoundedOrder.bot.{u1} α h' c)) -> (forall (x : α) (y : α), Iff (LE.le.{u1} α h x y) (LE.le.{u1} α h' x y)) -> (BoundedOrder.{u1} α h))
-but is expected to have type
-  forall {α : Type.{u1}} {h : LE.{u1} α} {h' : LE.{u1} α} (c : BoundedOrder.{u1} α h') (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (OrderTop.toTop.{u1} α h' (BoundedOrder.toOrderTop.{u1} α h' c))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (OrderBot.toBot.{u1} α h' (BoundedOrder.toOrderBot.{u1} α h' c))))) -> (forall (x : α) (y : α), Iff (LE.le.{u1} α h x y) (LE.le.{u1} α h' x y)) -> (BoundedOrder.{u1} α h))
-Case conversion may be inaccurate. Consider using '#align bounded_order.copy BoundedOrder.copyₓ'. -/
 /-- A function to create a provable equal copy of a bounded order
 with possibly different definitional equalities. -/
 def BoundedOrder.copy {h : LE α} {h' : LE α} (c : @BoundedOrder α h') (top : α)
@@ -46,12 +40,6 @@ def BoundedOrder.copy {h : LE α} {h' : LE α} (c : @BoundedOrder α h') (top :
   all_goals abstract subst_vars; cases c; simp_rw [le_eq]; assumption
 #align bounded_order.copy BoundedOrder.copy
 
-/- warning: lattice.copy -> Lattice.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} (c : Lattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (Lattice.Le.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Lattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Lattice.inf.{u1} α c)) -> (Lattice.{u1} α)))
-but is expected to have type
-  forall {α : Type.{u1}} (c : Lattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α c))))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α c))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α c)))) -> (Lattice.{u1} α)))
-Case conversion may be inaccurate. Consider using '#align lattice.copy Lattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a lattice
 with possibly different definitional equalities. -/
 def Lattice.copy (c : Lattice α) (le : α → α → Prop) (eq_le : le = @Lattice.Le α c)
@@ -65,12 +53,6 @@ def Lattice.copy (c : Lattice α) (le : α → α → Prop) (eq_le : le = @Latti
   all_goals abstract subst_vars; cases c; assumption
 #align lattice.copy Lattice.copy
 
-/- warning: distrib_lattice.copy -> DistribLattice.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} (c : DistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (DistribLattice.Le.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (DistribLattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (DistribLattice.inf.{u1} α c)) -> (DistribLattice.{u1} α)))
-but is expected to have type
-  forall {α : Type.{u1}} (c : DistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α c)))))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (DistribLattice.toLattice.{u1} α c)))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (DistribLattice.toLattice.{u1} α c))))) -> (DistribLattice.{u1} α)))
-Case conversion may be inaccurate. Consider using '#align distrib_lattice.copy DistribLattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a distributive lattice
 with possibly different definitional equalities. -/
 def DistribLattice.copy (c : DistribLattice α) (le : α → α → Prop)
@@ -84,12 +66,6 @@ def DistribLattice.copy (c : DistribLattice α) (le : α → α → Prop)
   all_goals abstract subst_vars; cases c; assumption
 #align distrib_lattice.copy DistribLattice.copy
 
-/- warning: complete_lattice.copy -> CompleteLattice.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} (c : CompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (CompleteLattice.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (CompleteLattice.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (CompleteLattice.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (CompleteLattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (CompleteLattice.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (CompleteLattice.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (CompleteLattice.inf.{u1} α c)) -> (CompleteLattice.{u1} α)))))))
-but is expected to have type
-  forall {α : Type.{u1}} (c : CompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α c))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α c)))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α c)))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c)))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.sSup.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.sInf.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))) -> (CompleteLattice.{u1} α)))))))
-Case conversion may be inaccurate. Consider using '#align complete_lattice.copy CompleteLattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a complete lattice
 with possibly different definitional equalities. -/
 def CompleteLattice.copy (c : CompleteLattice α) (le : α → α → Prop)
@@ -114,12 +90,6 @@ def CompleteLattice.copy (c : CompleteLattice α) (le : α → α → Prop)
   all_goals abstract subst_vars; cases c; assumption
 #align complete_lattice.copy CompleteLattice.copy
 
-/- warning: frame.copy -> Frame.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} (c : Order.Frame.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (Order.Frame.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (Order.Frame.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (Order.Frame.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Order.Frame.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Order.Frame.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (Order.Frame.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (Order.Frame.inf.{u1} α c)) -> (Order.Frame.{u1} α)))))))
-but is expected to have type
-  forall {α : Type.{u1}} (c : Order.Frame.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.sSup.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.sInf.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))) -> (Order.Frame.{u1} α)))))))
-Case conversion may be inaccurate. Consider using '#align frame.copy Frame.copyₓ'. -/
 /-- A function to create a provable equal copy of a frame with possibly different definitional
 equalities. -/
 def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = @Frame.Le α c) (top : α)
@@ -142,12 +112,6 @@ def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = @Frame.Le
   all_goals abstract subst_vars; cases c; assumption
 #align frame.copy Frame.copy
 
-/- warning: coframe.copy -> Coframe.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} (c : Order.Coframe.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (Order.Coframe.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (Order.Coframe.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (Order.Coframe.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Order.Coframe.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Order.Coframe.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (Order.Coframe.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (Order.Coframe.inf.{u1} α c)) -> (Order.Coframe.{u1} α)))))))
-but is expected to have type
-  forall {α : Type.{u1}} (c : Order.Coframe.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.sSup.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.sInf.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))) -> (Order.Coframe.{u1} α)))))))
-Case conversion may be inaccurate. Consider using '#align coframe.copy Coframe.copyₓ'. -/
 /-- A function to create a provable equal copy of a coframe with possibly different definitional
 equalities. -/
 def Coframe.copy (c : Coframe α) (le : α → α → Prop) (eq_le : le = @Coframe.Le α c) (top : α)
@@ -170,12 +134,6 @@ def Coframe.copy (c : Coframe α) (le : α → α → Prop) (eq_le : le = @Cofra
   all_goals abstract subst_vars; cases c; assumption
 #align coframe.copy Coframe.copy
 
-/- warning: complete_distrib_lattice.copy -> CompleteDistribLattice.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} (c : CompleteDistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (CompleteDistribLattice.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (CompleteDistribLattice.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (CompleteDistribLattice.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (CompleteDistribLattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (CompleteDistribLattice.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (CompleteDistribLattice.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (CompleteDistribLattice.inf.{u1} α c)) -> (CompleteDistribLattice.{u1} α)))))))
-but is expected to have type
-  forall {α : Type.{u1}} (c : CompleteDistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.sSup.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.sInf.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))) -> (CompleteDistribLattice.{u1} α)))))))
-Case conversion may be inaccurate. Consider using '#align complete_distrib_lattice.copy CompleteDistribLattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a complete distributive lattice
 with possibly different definitional equalities. -/
 def CompleteDistribLattice.copy (c : CompleteDistribLattice α) (le : α → α → Prop)
@@ -193,12 +151,6 @@ def CompleteDistribLattice.copy (c : CompleteDistribLattice α) (le : α → α
       inf eq_inf Sup eq_Sup Inf eq_Inf with }
 #align complete_distrib_lattice.copy CompleteDistribLattice.copy
 
-/- warning: conditionally_complete_lattice.copy -> ConditionallyCompleteLattice.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} (c : ConditionallyCompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (ConditionallyCompleteLattice.Le.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (ConditionallyCompleteLattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (ConditionallyCompleteLattice.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (ConditionallyCompleteLattice.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (ConditionallyCompleteLattice.inf.{u1} α c)) -> (ConditionallyCompleteLattice.{u1} α)))))
-but is expected to have type
-  forall {α : Type.{u1}} (c : ConditionallyCompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c)))))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c)))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.sSup.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α c)))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.sInf.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α c)))) -> (ConditionallyCompleteLattice.{u1} α)))))
-Case conversion may be inaccurate. Consider using '#align conditionally_complete_lattice.copy ConditionallyCompleteLattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a conditionally complete lattice
 with possibly different definitional equalities. -/
 def ConditionallyCompleteLattice.copy (c : ConditionallyCompleteLattice α) (le : α → α → Prop)
Diff
@@ -88,7 +88,7 @@ def DistribLattice.copy (c : DistribLattice α) (le : α → α → Prop)
 lean 3 declaration is
   forall {α : Type.{u1}} (c : CompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (CompleteLattice.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (CompleteLattice.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (CompleteLattice.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (CompleteLattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (CompleteLattice.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (CompleteLattice.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (CompleteLattice.inf.{u1} α c)) -> (CompleteLattice.{u1} α)))))))
 but is expected to have type
-  forall {α : Type.{u1}} (c : CompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α c))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α c)))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α c)))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c)))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))) -> (CompleteLattice.{u1} α)))))))
+  forall {α : Type.{u1}} (c : CompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α c))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α c)))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α c)))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c)))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.sSup.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.sInf.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))) -> (CompleteLattice.{u1} α)))))))
 Case conversion may be inaccurate. Consider using '#align complete_lattice.copy CompleteLattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a complete lattice
 with possibly different definitional equalities. -/
@@ -109,8 +109,8 @@ def CompleteLattice.copy (c : CompleteLattice α) (le : α → α → Prop)
       bot
       sup
       inf
-      supₛ
-      infₛ.. }
+      sSup
+      sInf.. }
   all_goals abstract subst_vars; cases c; assumption
 #align complete_lattice.copy CompleteLattice.copy
 
@@ -118,7 +118,7 @@ def CompleteLattice.copy (c : CompleteLattice α) (le : α → α → Prop)
 lean 3 declaration is
   forall {α : Type.{u1}} (c : Order.Frame.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (Order.Frame.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (Order.Frame.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (Order.Frame.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Order.Frame.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Order.Frame.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (Order.Frame.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (Order.Frame.inf.{u1} α c)) -> (Order.Frame.{u1} α)))))))
 but is expected to have type
-  forall {α : Type.{u1}} (c : Order.Frame.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))) -> (Order.Frame.{u1} α)))))))
+  forall {α : Type.{u1}} (c : Order.Frame.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.sSup.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.sInf.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))) -> (Order.Frame.{u1} α)))))))
 Case conversion may be inaccurate. Consider using '#align frame.copy Frame.copyₓ'. -/
 /-- A function to create a provable equal copy of a frame with possibly different definitional
 equalities. -/
@@ -137,8 +137,8 @@ def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = @Frame.Le
       bot
       sup
       inf
-      supₛ
-      infₛ.. }
+      sSup
+      sInf.. }
   all_goals abstract subst_vars; cases c; assumption
 #align frame.copy Frame.copy
 
@@ -146,7 +146,7 @@ def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = @Frame.Le
 lean 3 declaration is
   forall {α : Type.{u1}} (c : Order.Coframe.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (Order.Coframe.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (Order.Coframe.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (Order.Coframe.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Order.Coframe.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Order.Coframe.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (Order.Coframe.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (Order.Coframe.inf.{u1} α c)) -> (Order.Coframe.{u1} α)))))))
 but is expected to have type
-  forall {α : Type.{u1}} (c : Order.Coframe.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))) -> (Order.Coframe.{u1} α)))))))
+  forall {α : Type.{u1}} (c : Order.Coframe.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.sSup.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.sInf.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))) -> (Order.Coframe.{u1} α)))))))
 Case conversion may be inaccurate. Consider using '#align coframe.copy Coframe.copyₓ'. -/
 /-- A function to create a provable equal copy of a coframe with possibly different definitional
 equalities. -/
@@ -165,8 +165,8 @@ def Coframe.copy (c : Coframe α) (le : α → α → Prop) (eq_le : le = @Cofra
       bot
       sup
       inf
-      supₛ
-      infₛ.. }
+      sSup
+      sInf.. }
   all_goals abstract subst_vars; cases c; assumption
 #align coframe.copy Coframe.copy
 
@@ -174,7 +174,7 @@ def Coframe.copy (c : Coframe α) (le : α → α → Prop) (eq_le : le = @Cofra
 lean 3 declaration is
   forall {α : Type.{u1}} (c : CompleteDistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (CompleteDistribLattice.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (CompleteDistribLattice.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (CompleteDistribLattice.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (CompleteDistribLattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (CompleteDistribLattice.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (CompleteDistribLattice.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (CompleteDistribLattice.inf.{u1} α c)) -> (CompleteDistribLattice.{u1} α)))))))
 but is expected to have type
-  forall {α : Type.{u1}} (c : CompleteDistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))) -> (CompleteDistribLattice.{u1} α)))))))
+  forall {α : Type.{u1}} (c : CompleteDistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.sSup.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.sInf.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))) -> (CompleteDistribLattice.{u1} α)))))))
 Case conversion may be inaccurate. Consider using '#align complete_distrib_lattice.copy CompleteDistribLattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a complete distributive lattice
 with possibly different definitional equalities. -/
@@ -197,7 +197,7 @@ def CompleteDistribLattice.copy (c : CompleteDistribLattice α) (le : α → α
 lean 3 declaration is
   forall {α : Type.{u1}} (c : ConditionallyCompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (ConditionallyCompleteLattice.Le.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (ConditionallyCompleteLattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (ConditionallyCompleteLattice.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (ConditionallyCompleteLattice.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (ConditionallyCompleteLattice.inf.{u1} α c)) -> (ConditionallyCompleteLattice.{u1} α)))))
 but is expected to have type
-  forall {α : Type.{u1}} (c : ConditionallyCompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c)))))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c)))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α c)))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α c)))) -> (ConditionallyCompleteLattice.{u1} α)))))
+  forall {α : Type.{u1}} (c : ConditionallyCompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c)))))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c)))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.sSup.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α c)))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.sInf.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α c)))) -> (ConditionallyCompleteLattice.{u1} α)))))
 Case conversion may be inaccurate. Consider using '#align conditionally_complete_lattice.copy ConditionallyCompleteLattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a conditionally complete lattice
 with possibly different definitional equalities. -/
@@ -212,8 +212,8 @@ def ConditionallyCompleteLattice.copy (c : ConditionallyCompleteLattice α) (le
     { le
       sup
       inf
-      supₛ
-      infₛ.. }
+      sSup
+      sInf.. }
   all_goals abstract subst_vars; cases c; assumption
 #align conditionally_complete_lattice.copy ConditionallyCompleteLattice.copy
 
Diff
@@ -50,7 +50,7 @@ def BoundedOrder.copy {h : LE α} {h' : LE α} (c : @BoundedOrder α h') (top :
 lean 3 declaration is
   forall {α : Type.{u1}} (c : Lattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (Lattice.Le.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Lattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Lattice.inf.{u1} α c)) -> (Lattice.{u1} α)))
 but is expected to have type
-  forall {α : Type.{u1}} (c : Lattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α c))))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (HasSup.sup.{u1} α (inferInstance.{succ u1} (HasSup.{u1} α) (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α c))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (HasInf.inf.{u1} α (inferInstance.{succ u1} (HasInf.{u1} α) (Lattice.toHasInf.{u1} α c)))) -> (Lattice.{u1} α)))
+  forall {α : Type.{u1}} (c : Lattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α c))))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α c))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α c)))) -> (Lattice.{u1} α)))
 Case conversion may be inaccurate. Consider using '#align lattice.copy Lattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a lattice
 with possibly different definitional equalities. -/
@@ -69,7 +69,7 @@ def Lattice.copy (c : Lattice α) (le : α → α → Prop) (eq_le : le = @Latti
 lean 3 declaration is
   forall {α : Type.{u1}} (c : DistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (DistribLattice.Le.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (DistribLattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (DistribLattice.inf.{u1} α c)) -> (DistribLattice.{u1} α)))
 but is expected to have type
-  forall {α : Type.{u1}} (c : DistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α c)))))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (HasSup.sup.{u1} α (inferInstance.{succ u1} (HasSup.{u1} α) (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (DistribLattice.toLattice.{u1} α c)))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (HasInf.inf.{u1} α (inferInstance.{succ u1} (HasInf.{u1} α) (Lattice.toHasInf.{u1} α (DistribLattice.toLattice.{u1} α c))))) -> (DistribLattice.{u1} α)))
+  forall {α : Type.{u1}} (c : DistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (DistribLattice.toLattice.{u1} α c)))))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (DistribLattice.toLattice.{u1} α c)))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (DistribLattice.toLattice.{u1} α c))))) -> (DistribLattice.{u1} α)))
 Case conversion may be inaccurate. Consider using '#align distrib_lattice.copy DistribLattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a distributive lattice
 with possibly different definitional equalities. -/
@@ -88,7 +88,7 @@ def DistribLattice.copy (c : DistribLattice α) (le : α → α → Prop)
 lean 3 declaration is
   forall {α : Type.{u1}} (c : CompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (CompleteLattice.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (CompleteLattice.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (CompleteLattice.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (CompleteLattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (CompleteLattice.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (CompleteLattice.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (CompleteLattice.inf.{u1} α c)) -> (CompleteLattice.{u1} α)))))))
 but is expected to have type
-  forall {α : Type.{u1}} (c : CompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α c))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α c)))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α c)))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (HasSup.sup.{u1} α (inferInstance.{succ u1} (HasSup.{u1} α) (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (HasInf.inf.{u1} α (inferInstance.{succ u1} (HasInf.{u1} α) (Lattice.toHasInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c)))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))) -> (CompleteLattice.{u1} α)))))))
+  forall {α : Type.{u1}} (c : CompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α c))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α c)))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α c)))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c)))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α c))))) -> (CompleteLattice.{u1} α)))))))
 Case conversion may be inaccurate. Consider using '#align complete_lattice.copy CompleteLattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a complete lattice
 with possibly different definitional equalities. -/
@@ -118,7 +118,7 @@ def CompleteLattice.copy (c : CompleteLattice α) (le : α → α → Prop)
 lean 3 declaration is
   forall {α : Type.{u1}} (c : Order.Frame.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (Order.Frame.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (Order.Frame.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (Order.Frame.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Order.Frame.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Order.Frame.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (Order.Frame.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (Order.Frame.inf.{u1} α c)) -> (Order.Frame.{u1} α)))))))
 but is expected to have type
-  forall {α : Type.{u1}} (c : Order.Frame.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (HasSup.sup.{u1} α (inferInstance.{succ u1} (HasSup.{u1} α) (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (HasInf.inf.{u1} α (inferInstance.{succ u1} (HasInf.{u1} α) (Lattice.toHasInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))) -> (Order.Frame.{u1} α)))))))
+  forall {α : Type.{u1}} (c : Order.Frame.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Frame.toCompleteLattice.{u1} α c)))))) -> (Order.Frame.{u1} α)))))))
 Case conversion may be inaccurate. Consider using '#align frame.copy Frame.copyₓ'. -/
 /-- A function to create a provable equal copy of a frame with possibly different definitional
 equalities. -/
@@ -146,7 +146,7 @@ def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = @Frame.Le
 lean 3 declaration is
   forall {α : Type.{u1}} (c : Order.Coframe.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (Order.Coframe.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (Order.Coframe.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (Order.Coframe.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Order.Coframe.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Order.Coframe.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (Order.Coframe.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (Order.Coframe.inf.{u1} α c)) -> (Order.Coframe.{u1} α)))))))
 but is expected to have type
-  forall {α : Type.{u1}} (c : Order.Coframe.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (HasSup.sup.{u1} α (inferInstance.{succ u1} (HasSup.{u1} α) (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (HasInf.inf.{u1} α (inferInstance.{succ u1} (HasInf.{u1} α) (Lattice.toHasInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))) -> (Order.Coframe.{u1} α)))))))
+  forall {α : Type.{u1}} (c : Order.Coframe.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α c)))))) -> (Order.Coframe.{u1} α)))))))
 Case conversion may be inaccurate. Consider using '#align coframe.copy Coframe.copyₓ'. -/
 /-- A function to create a provable equal copy of a coframe with possibly different definitional
 equalities. -/
@@ -174,7 +174,7 @@ def Coframe.copy (c : Coframe α) (le : α → α → Prop) (eq_le : le = @Cofra
 lean 3 declaration is
   forall {α : Type.{u1}} (c : CompleteDistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (CompleteDistribLattice.Le.{u1} α c)) -> (forall (top : α), (Eq.{succ u1} α top (CompleteDistribLattice.top.{u1} α c)) -> (forall (bot : α), (Eq.{succ u1} α bot (CompleteDistribLattice.bot.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (CompleteDistribLattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (CompleteDistribLattice.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (CompleteDistribLattice.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (CompleteDistribLattice.inf.{u1} α c)) -> (CompleteDistribLattice.{u1} α)))))))
 but is expected to have type
-  forall {α : Type.{u1}} (c : CompleteDistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (HasSup.sup.{u1} α (inferInstance.{succ u1} (HasSup.{u1} α) (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (HasInf.inf.{u1} α (inferInstance.{succ u1} (HasInf.{u1} α) (Lattice.toHasInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))) -> (CompleteDistribLattice.{u1} α)))))))
+  forall {α : Type.{u1}} (c : CompleteDistribLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (CompleteSemilatticeInf.toPartialOrder.{u1} α (CompleteLattice.toCompleteSemilatticeInf.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))))) -> (forall (top : α), (Eq.{succ u1} α top (Top.top.{u1} α (inferInstance.{succ u1} (Top.{u1} α) (CompleteLattice.toTop.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))) -> (forall (bot : α), (Eq.{succ u1} α bot (Bot.bot.{u1} α (inferInstance.{succ u1} (Bot.{u1} α) (CompleteLattice.toBot.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c)))))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α (CompleteLattice.toConditionallyCompleteLattice.{u1} α (Order.Coframe.toCompleteLattice.{u1} α (CompleteDistribLattice.toCoframe.{u1} α c))))))) -> (CompleteDistribLattice.{u1} α)))))))
 Case conversion may be inaccurate. Consider using '#align complete_distrib_lattice.copy CompleteDistribLattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a complete distributive lattice
 with possibly different definitional equalities. -/
@@ -197,7 +197,7 @@ def CompleteDistribLattice.copy (c : CompleteDistribLattice α) (le : α → α
 lean 3 declaration is
   forall {α : Type.{u1}} (c : ConditionallyCompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (ConditionallyCompleteLattice.Le.{u1} α c)) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (ConditionallyCompleteLattice.sup.{u1} α c)) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (ConditionallyCompleteLattice.inf.{u1} α c)) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (ConditionallyCompleteLattice.sup.{u1} α c)) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (ConditionallyCompleteLattice.inf.{u1} α c)) -> (ConditionallyCompleteLattice.{u1} α)))))
 but is expected to have type
-  forall {α : Type.{u1}} (c : ConditionallyCompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c)))))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (HasSup.sup.{u1} α (inferInstance.{succ u1} (HasSup.{u1} α) (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c)))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (HasInf.inf.{u1} α (inferInstance.{succ u1} (HasInf.{u1} α) (Lattice.toHasInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α c)))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α c)))) -> (ConditionallyCompleteLattice.{u1} α)))))
+  forall {α : Type.{u1}} (c : ConditionallyCompleteLattice.{u1} α) (le : α -> α -> Prop), (Eq.{succ u1} (α -> α -> Prop) le (LE.le.{u1} α (inferInstance.{succ u1} (LE.{u1} α) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c)))))))) -> (forall (sup : α -> α -> α), (Eq.{succ u1} (α -> α -> α) sup (Sup.sup.{u1} α (inferInstance.{succ u1} (Sup.{u1} α) (SemilatticeSup.toSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c)))))) -> (forall (inf : α -> α -> α), (Eq.{succ u1} (α -> α -> α) inf (Inf.inf.{u1} α (inferInstance.{succ u1} (Inf.{u1} α) (Lattice.toInf.{u1} α (ConditionallyCompleteLattice.toLattice.{u1} α c))))) -> (forall (Sup : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Sup (SupSet.supₛ.{u1} α (inferInstance.{succ u1} (SupSet.{u1} α) (ConditionallyCompleteLattice.toSupSet.{u1} α c)))) -> (forall (Inf : (Set.{u1} α) -> α), (Eq.{succ u1} ((Set.{u1} α) -> α) Inf (InfSet.infₛ.{u1} α (inferInstance.{succ u1} (InfSet.{u1} α) (ConditionallyCompleteLattice.toInfSet.{u1} α c)))) -> (ConditionallyCompleteLattice.{u1} α)))))
 Case conversion may be inaccurate. Consider using '#align conditionally_complete_lattice.copy ConditionallyCompleteLattice.copyₓ'. -/
 /-- A function to create a provable equal copy of a conditionally complete lattice
 with possibly different definitional equalities. -/

Changes in mathlib4

mathlib3
mathlib4
style: homogenise porting notes (#11145)

Homogenises porting notes via capitalisation and addition of whitespace.

It makes the following changes:

  • converts "--porting note" into "-- Porting note";
  • converts "porting note" into "Porting note".
Diff
@@ -22,7 +22,7 @@ universe u
 
 variable {α : Type u}
 
---Porting note: mathlib3 proof uses `refine { top := top, bot := bot, .. }` but this does not work
+-- Porting note: mathlib3 proof uses `refine { top := top, bot := bot, .. }` but this does not work
 -- anymore
 /-- A function to create a provable equal copy of a bounded order
 with possibly different definitional equalities. -/
@@ -34,7 +34,7 @@ def BoundedOrder.copy {h : LE α} {h' : LE α} (c : @BoundedOrder α h')
     (@OrderBot.mk α h { bot := bot } (fun _ ↦ by simp [eq_bot, le_eq]))
 #align bounded_order.copy BoundedOrder.copy
 
---Porting note: original proof uses
+-- Porting note: original proof uses
 -- `all_goals { abstract { subst_vars, casesI c, simp_rw le_eq, assumption } }`
 /-- A function to create a provable equal copy of a lattice
 with possibly different definitional equalities. -/
@@ -55,7 +55,7 @@ def Lattice.copy (c : Lattice α)
   · intro _ _ _ hac hbc; simp_rw [eq_le] at hac hbc ⊢; simp [eq_inf, hac, hbc]
 #align lattice.copy Lattice.copy
 
---Porting note: original proof uses
+-- Porting note: original proof uses
 -- `all_goals { abstract { subst_vars, casesI c, simp_rw le_eq, assumption } }`
 /-- A function to create a provable equal copy of a distributive lattice
 with possibly different definitional equalities. -/
@@ -77,7 +77,7 @@ def DistribLattice.copy (c : DistribLattice α)
   · intros; simp [eq_le, eq_inf, eq_sup, le_sup_inf]
 #align distrib_lattice.copy DistribLattice.copy
 
---Porting note: original proof uses
+-- Porting note: original proof uses
 -- `all_goals { abstract { subst_vars, casesI c, simp_rw le_eq, assumption } }`
 /-- A function to create a provable equal copy of a complete lattice
 with possibly different definitional equalities. -/
@@ -100,7 +100,7 @@ def CompleteLattice.copy (c : CompleteLattice α)
   · intros; simp [eq_le, eq_bot]
 #align complete_lattice.copy CompleteLattice.copy
 
---Porting note: original proof uses
+-- Porting note: original proof uses
 -- `all_goals { abstract { subst_vars, casesI c, simp_rw le_eq, assumption } }`
 /-- A function to create a provable equal copy of a frame with possibly different definitional
 equalities. -/
@@ -117,7 +117,7 @@ def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = (by infer_
       simp [eq_le, eq_sup, eq_inf, eq_sSup, @Order.Frame.inf_sSup_le_iSup_inf α _ a s] }
 #align frame.copy Frame.copy
 
---Porting note: original proof uses
+-- Porting note: original proof uses
 -- `all_goals { abstract { subst_vars, casesI c, simp_rw le_eq, assumption } }`
 /-- A function to create a provable equal copy of a coframe with possibly different definitional
 equalities. -/
@@ -151,7 +151,7 @@ def CompleteDistribLattice.copy (c : CompleteDistribLattice α)
       inf eq_inf sSup eq_sSup sInf eq_sInf with }
 #align complete_distrib_lattice.copy CompleteDistribLattice.copy
 
---Porting note: original proof uses
+-- Porting note: original proof uses
 -- `all_goals { abstract { subst_vars, casesI c, simp_rw le_eq, assumption } }`
 /-- A function to create a provable equal copy of a conditionally complete lattice
 with possibly different definitional equalities. -/
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,14 +2,11 @@
 Copyright (c) 2020 Johan Commelin. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johan Commelin
-
-! This file was ported from Lean 3 source module order.copy
-! leanprover-community/mathlib commit 207cfac9fcd06138865b5d04f7091e46d9320432
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Order.ConditionallyCompleteLattice.Basic
 
+#align_import order.copy from "leanprover-community/mathlib"@"207cfac9fcd06138865b5d04f7091e46d9320432"
+
 /-!
 # Tooling to make copies of lattice structures
 
chore: Rename to sSup/iSup (#3938)

As discussed on Zulip

Renames

  • supₛsSup
  • infₛsInf
  • supᵢiSup
  • infᵢiInf
  • bsupₛbsSup
  • binfₛbsInf
  • bsupᵢbiSup
  • binfᵢbiInf
  • csupₛcsSup
  • cinfₛcsInf
  • csupᵢciSup
  • cinfᵢciInf
  • unionₛsUnion
  • interₛsInter
  • unionᵢiUnion
  • interᵢiInter
  • bunionₛbsUnion
  • binterₛbsInter
  • bunionᵢbiUnion
  • binterᵢbiInter

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

Diff
@@ -90,15 +90,15 @@ def CompleteLattice.copy (c : CompleteLattice α)
     (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
     (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
     (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf)
-    (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
-    (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) :
+    (sSup : Set α → α) (eq_sSup : sSup = (by infer_instance : SupSet α).sSup)
+    (sInf : Set α → α) (eq_sInf : sInf = (by infer_instance : InfSet α).sInf) :
     CompleteLattice α := by
   refine' { Lattice.copy (@CompleteLattice.toLattice α c) le eq_le sup eq_sup inf eq_inf with
-    le := le, top := top, bot := bot, sup := sup, inf := inf, supₛ := supₛ, infₛ := infₛ.. }
-  · intro _ _ h; simp [eq_le, eq_supₛ, le_supₛ _ _ h]
-  · intro _ _ h; simpa [eq_le, eq_supₛ] using h
-  · intro _ _ h; simp [eq_le, eq_infₛ, infₛ_le _ _ h]
-  · intro _ _ h; simpa [eq_le, eq_infₛ] using h
+    le := le, top := top, bot := bot, sup := sup, inf := inf, sSup := sSup, sInf := sInf.. }
+  · intro _ _ h; simp [eq_le, eq_sSup, le_sSup _ _ h]
+  · intro _ _ h; simpa [eq_le, eq_sSup] using h
+  · intro _ _ h; simp [eq_le, eq_sInf, sInf_le _ _ h]
+  · intro _ _ h; simpa [eq_le, eq_sInf] using h
   · intros; simp [eq_le, eq_top]
   · intros; simp [eq_le, eq_bot]
 #align complete_lattice.copy CompleteLattice.copy
@@ -112,12 +112,12 @@ def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = (by infer_
     (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
     (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
     (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf)
-    (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
-    (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) : Frame α :=
+    (sSup : Set α → α) (eq_sSup : sSup = (by infer_instance : SupSet α).sSup)
+    (sInf : Set α → α) (eq_sInf : sInf = (by infer_instance : InfSet α).sInf) : Frame α :=
   { CompleteLattice.copy (@Frame.toCompleteLattice α c) le eq_le top eq_top bot eq_bot
-      sup eq_sup inf eq_inf supₛ eq_supₛ infₛ eq_infₛ with
-    inf_supₛ_le_supᵢ_inf := fun a s => by
-      simp [eq_le, eq_sup, eq_inf, eq_supₛ, @Order.Frame.inf_supₛ_le_supᵢ_inf α _ a s] }
+      sup eq_sup inf eq_inf sSup eq_sSup sInf eq_sInf with
+    inf_sSup_le_iSup_inf := fun a s => by
+      simp [eq_le, eq_sup, eq_inf, eq_sSup, @Order.Frame.inf_sSup_le_iSup_inf α _ a s] }
 #align frame.copy Frame.copy
 
 --Porting note: original proof uses
@@ -129,12 +129,12 @@ def Coframe.copy (c : Coframe α) (le : α → α → Prop) (eq_le : le = (by in
     (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
     (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
     (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf)
-    (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
-    (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) : Coframe α :=
+    (sSup : Set α → α) (eq_sSup : sSup = (by infer_instance : SupSet α).sSup)
+    (sInf : Set α → α) (eq_sInf : sInf = (by infer_instance : InfSet α).sInf) : Coframe α :=
   { CompleteLattice.copy (@Coframe.toCompleteLattice α c) le eq_le top eq_top bot eq_bot sup
-        eq_sup inf eq_inf supₛ eq_supₛ infₛ eq_infₛ with
-    infᵢ_sup_le_sup_infₛ := fun a s => by
-      simp [eq_le, eq_sup, eq_inf, eq_infₛ, @Order.Coframe.infᵢ_sup_le_sup_infₛ α _ a s] }
+        eq_sup inf eq_inf sSup eq_sSup sInf eq_sInf with
+    iInf_sup_le_sup_sInf := fun a s => by
+      simp [eq_le, eq_sup, eq_inf, eq_sInf, @Order.Coframe.iInf_sup_le_sup_sInf α _ a s] }
 #align coframe.copy Coframe.copy
 
 /-- A function to create a provable equal copy of a complete distributive lattice
@@ -145,13 +145,13 @@ def CompleteDistribLattice.copy (c : CompleteDistribLattice α)
     (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
     (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
     (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf)
-    (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
-    (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) :
+    (sSup : Set α → α) (eq_sSup : sSup = (by infer_instance : SupSet α).sSup)
+    (sInf : Set α → α) (eq_sInf : sInf = (by infer_instance : InfSet α).sInf) :
     CompleteDistribLattice α :=
   { Frame.copy (@CompleteDistribLattice.toFrame α c) le eq_le top eq_top bot eq_bot sup eq_sup inf
-      eq_inf supₛ eq_supₛ infₛ eq_infₛ,
+      eq_inf sSup eq_sSup sInf eq_sInf,
     Coframe.copy (@CompleteDistribLattice.toCoframe α c) le eq_le top eq_top bot eq_bot sup eq_sup
-      inf eq_inf supₛ eq_supₛ infₛ eq_infₛ with }
+      inf eq_inf sSup eq_sSup sInf eq_sInf with }
 #align complete_distrib_lattice.copy CompleteDistribLattice.copy
 
 --Porting note: original proof uses
@@ -162,10 +162,10 @@ def ConditionallyCompleteLattice.copy (c : ConditionallyCompleteLattice α)
     (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
     (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
     (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf)
-    (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
-    (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) :
+    (sSup : Set α → α) (eq_sSup : sSup = (by infer_instance : SupSet α).sSup)
+    (sInf : Set α → α) (eq_sInf : sInf = (by infer_instance : InfSet α).sInf) :
     ConditionallyCompleteLattice α := by
-  refine' { le := le, sup := sup, inf := inf, supₛ := supₛ, infₛ := infₛ.. }
+  refine' { le := le, sup := sup, inf := inf, sSup := sSup, sInf := sInf.. }
   · intro a b; exact le a b ∧ ¬ le b a
   · intros; simp [eq_le]
   · intro _ _ _ hab hbc; rw [eq_le] at hab hbc ⊢; exact le_trans hab hbc
@@ -177,8 +177,8 @@ def ConditionallyCompleteLattice.copy (c : ConditionallyCompleteLattice α)
   · intros; simp [eq_le, eq_inf]
   · intros; simp [eq_le, eq_inf]
   · intro _ _ _ hac hbc; simp_rw [eq_le] at hac hbc ⊢; simp [eq_inf, hac, hbc]
-  · intro _ _ hb h; subst_vars; exact le_csupₛ _ _ hb h
-  · intro _ _ hb h; subst_vars; exact csupₛ_le _ _ hb h
-  · intro _ _ hb h; subst_vars; exact cinfₛ_le _ _ hb h
-  · intro _ _ hb h; subst_vars; exact le_cinfₛ _ _ hb h
+  · intro _ _ hb h; subst_vars; exact le_csSup _ _ hb h
+  · intro _ _ hb h; subst_vars; exact csSup_le _ _ hb h
+  · intro _ _ hb h; subst_vars; exact csInf_le _ _ hb h
+  · intro _ _ hb h; subst_vars; exact le_csInf _ _ hb h
 #align conditionally_complete_lattice.copy ConditionallyCompleteLattice.copy
chore: fix #align lines (#3640)

This PR fixes two things:

  • Most align statements for definitions and theorems and instances that are separated by two newlines from the relevant declaration (s/\n\n#align/\n#align). This is often seen in the mathport output after ending calc blocks.
  • All remaining more-than-one-line #align statements. (This was needed for a script I wrote for #3630.)
Diff
@@ -78,7 +78,6 @@ def DistribLattice.copy (c : DistribLattice α)
   · intros; simp [eq_le, eq_inf]
   · intro _ _ _ hac hbc; simp_rw [eq_le] at hac hbc ⊢; simp [eq_inf, hac, hbc]
   · intros; simp [eq_le, eq_inf, eq_sup, le_sup_inf]
-
 #align distrib_lattice.copy DistribLattice.copy
 
 --Porting note: original proof uses
@@ -182,5 +181,4 @@ def ConditionallyCompleteLattice.copy (c : ConditionallyCompleteLattice α)
   · intro _ _ hb h; subst_vars; exact csupₛ_le _ _ hb h
   · intro _ _ hb h; subst_vars; exact cinfₛ_le _ _ hb h
   · intro _ _ hb h; subst_vars; exact le_cinfₛ _ _ hb h
-
 #align conditionally_complete_lattice.copy ConditionallyCompleteLattice.copy
refactor: rename HasSup/HasInf to Sup/Inf (#2475)

Co-authored-by: Yury G. Kudryashov <urkud@urkud.name>

Diff
@@ -43,8 +43,8 @@ def BoundedOrder.copy {h : LE α} {h' : LE α} (c : @BoundedOrder α h')
 with possibly different definitional equalities. -/
 def Lattice.copy (c : Lattice α)
     (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
-    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
-    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf) : Lattice α := by
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf) : Lattice α := by
   refine' { le := le, sup := sup, inf := inf, lt := fun a b ↦ le a b ∧ ¬ le b a.. }
   · intros; simp [eq_le]
   · intro _ _ _ hab hbc; rw [eq_le] at hab hbc ⊢; exact le_trans hab hbc
@@ -64,8 +64,8 @@ def Lattice.copy (c : Lattice α)
 with possibly different definitional equalities. -/
 def DistribLattice.copy (c : DistribLattice α)
     (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
-    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
-    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf) : DistribLattice α := by
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf) : DistribLattice α := by
   refine' { le := le, sup := sup, inf := inf, lt := fun a b ↦ le a b ∧ ¬ le b a.. }
   · intros; simp [eq_le]
   · intro _ _ _ hab hbc; rw [eq_le] at hab hbc ⊢; exact le_trans hab hbc
@@ -89,8 +89,8 @@ def CompleteLattice.copy (c : CompleteLattice α)
     (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
     (top : α) (eq_top : top = (by infer_instance : Top α).top)
     (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
-    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
-    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf)
     (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
     (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) :
     CompleteLattice α := by
@@ -111,8 +111,8 @@ equalities. -/
 def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
     (top : α) (eq_top : top = (by infer_instance : Top α).top)
     (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
-    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
-    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf)
     (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
     (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) : Frame α :=
   { CompleteLattice.copy (@Frame.toCompleteLattice α c) le eq_le top eq_top bot eq_bot
@@ -128,8 +128,8 @@ equalities. -/
 def Coframe.copy (c : Coframe α) (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
     (top : α) (eq_top : top = (by infer_instance : Top α).top)
     (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
-    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
-    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf)
     (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
     (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) : Coframe α :=
   { CompleteLattice.copy (@Coframe.toCompleteLattice α c) le eq_le top eq_top bot eq_bot sup
@@ -144,8 +144,8 @@ def CompleteDistribLattice.copy (c : CompleteDistribLattice α)
     (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
     (top : α) (eq_top : top = (by infer_instance : Top α).top)
     (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
-    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
-    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf)
     (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
     (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) :
     CompleteDistribLattice α :=
@@ -161,8 +161,8 @@ def CompleteDistribLattice.copy (c : CompleteDistribLattice α)
 with possibly different definitional equalities. -/
 def ConditionallyCompleteLattice.copy (c : ConditionallyCompleteLattice α)
     (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
-    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
-    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : Sup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : Inf α).inf)
     (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
     (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) :
     ConditionallyCompleteLattice α := by
chore: tidy various files (#2251)
Diff
@@ -29,9 +29,9 @@ variable {α : Type u}
 -- anymore
 /-- A function to create a provable equal copy of a bounded order
 with possibly different definitional equalities. -/
-def BoundedOrder.copy {h : LE α} {h' : LE α} (c : @BoundedOrder α h') (top : α)
-    (eq_top : top = (by infer_instance : Top α).top) (bot : α)
-    (eq_bot : bot = (by infer_instance : Bot α).bot)
+def BoundedOrder.copy {h : LE α} {h' : LE α} (c : @BoundedOrder α h')
+    (top : α) (eq_top : top = (by infer_instance : Top α).top)
+    (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
     (le_eq : ∀ x y : α, (@LE.le α h) x y ↔ x ≤ y) : @BoundedOrder α h :=
   @BoundedOrder.mk α h (@OrderTop.mk α h { top := top } (fun _ ↦ by simp [eq_top, le_eq]))
     (@OrderBot.mk α h { bot := bot } (fun _ ↦ by simp [eq_bot, le_eq]))
@@ -41,29 +41,30 @@ def BoundedOrder.copy {h : LE α} {h' : LE α} (c : @BoundedOrder α h') (top :
 -- `all_goals { abstract { subst_vars, casesI c, simp_rw le_eq, assumption } }`
 /-- A function to create a provable equal copy of a lattice
 with possibly different definitional equalities. -/
-def Lattice.copy (c : Lattice α) (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
-    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup) (inf : α → α → α)
-    (eq_inf : inf = (by infer_instance : HasInf α).inf) : Lattice α := by
-    refine' { le := le, sup := sup, inf := inf, lt := fun a b ↦ le a b ∧ ¬ le b a.. }
-    · intros; simp [eq_le]
-    · intro _ _ _ hab hbc; rw [eq_le] at hab hbc ⊢; exact le_trans hab hbc
-    · intros; simp [eq_le]
-    · intro _ _ hab hba; simp_rw [eq_le] at hab hba; exact le_antisymm hab hba
-    · intros; simp [eq_le, eq_sup]
-    · intros; simp [eq_le, eq_sup]
-    · intro _ _ _ hac hbc; simp_rw [eq_le] at hac hbc ⊢; simp [eq_sup, hac, hbc]
-    · intros; simp [eq_le, eq_inf]
-    · intros; simp [eq_le, eq_inf]
-    · intro _ _ _ hac hbc; simp_rw [eq_le] at hac hbc ⊢; simp [eq_inf, hac, hbc]
+def Lattice.copy (c : Lattice α)
+    (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf) : Lattice α := by
+  refine' { le := le, sup := sup, inf := inf, lt := fun a b ↦ le a b ∧ ¬ le b a.. }
+  · intros; simp [eq_le]
+  · intro _ _ _ hab hbc; rw [eq_le] at hab hbc ⊢; exact le_trans hab hbc
+  · intros; simp [eq_le]
+  · intro _ _ hab hba; simp_rw [eq_le] at hab hba; exact le_antisymm hab hba
+  · intros; simp [eq_le, eq_sup]
+  · intros; simp [eq_le, eq_sup]
+  · intro _ _ _ hac hbc; simp_rw [eq_le] at hac hbc ⊢; simp [eq_sup, hac, hbc]
+  · intros; simp [eq_le, eq_inf]
+  · intros; simp [eq_le, eq_inf]
+  · intro _ _ _ hac hbc; simp_rw [eq_le] at hac hbc ⊢; simp [eq_inf, hac, hbc]
 #align lattice.copy Lattice.copy
 
 --Porting note: original proof uses
 -- `all_goals { abstract { subst_vars, casesI c, simp_rw le_eq, assumption } }`
 /-- A function to create a provable equal copy of a distributive lattice
 with possibly different definitional equalities. -/
-def DistribLattice.copy (c : DistribLattice α) (le : α → α → Prop)
-    (eq_le : le = (by infer_instance : LE α).le) (sup : α → α → α)
-    (eq_sup : sup = (by infer_instance : HasSup α).sup)
+def DistribLattice.copy (c : DistribLattice α)
+    (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
     (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf) : DistribLattice α := by
   refine' { le := le, sup := sup, inf := inf, lt := fun a b ↦ le a b ∧ ¬ le b a.. }
   · intros; simp [eq_le]
@@ -84,22 +85,23 @@ def DistribLattice.copy (c : DistribLattice α) (le : α → α → Prop)
 -- `all_goals { abstract { subst_vars, casesI c, simp_rw le_eq, assumption } }`
 /-- A function to create a provable equal copy of a complete lattice
 with possibly different definitional equalities. -/
-def CompleteLattice.copy (c : CompleteLattice α) (le : α → α → Prop)
-    (eq_le : le = (by infer_instance : LE α).le) (top : α)
-    (eq_top : top = (by infer_instance : Top α).top) (bot : α)
-    (eq_bot : bot = (by infer_instance : Bot α).bot) (sup : α → α → α)
-    (eq_sup : sup = (by infer_instance : HasSup α).sup) (inf : α → α → α)
-    (eq_inf : inf = (by infer_instance : HasInf α).inf) (Sup : Set α → α)
-    (eq_Sup : Sup = (by infer_instance : SupSet α).supₛ) (Inf : Set α → α)
-    (eq_Inf : Inf = (by infer_instance : InfSet α).infₛ) : CompleteLattice α := by
-    refine' { Lattice.copy (@CompleteLattice.toLattice α c) le eq_le sup eq_sup inf eq_inf with
-      le := le, top := top, bot := bot, sup := sup, inf := inf, supₛ := Sup, infₛ := Inf.. }
-    · intro _ _ h; simp [eq_le, eq_Sup, le_supₛ _ _ h]
-    · intro _ _ h; simpa [eq_le, eq_Sup] using h
-    · intro _ _ h; simp [eq_le, eq_Inf, infₛ_le _ _ h]
-    · intro _ _ h; simpa [eq_le, eq_Inf] using h
-    · intros; simp [eq_le, eq_top]
-    · intros; simp [eq_le, eq_bot]
+def CompleteLattice.copy (c : CompleteLattice α)
+    (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
+    (top : α) (eq_top : top = (by infer_instance : Top α).top)
+    (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf)
+    (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
+    (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) :
+    CompleteLattice α := by
+  refine' { Lattice.copy (@CompleteLattice.toLattice α c) le eq_le sup eq_sup inf eq_inf with
+    le := le, top := top, bot := bot, sup := sup, inf := inf, supₛ := supₛ, infₛ := infₛ.. }
+  · intro _ _ h; simp [eq_le, eq_supₛ, le_supₛ _ _ h]
+  · intro _ _ h; simpa [eq_le, eq_supₛ] using h
+  · intro _ _ h; simp [eq_le, eq_infₛ, infₛ_le _ _ h]
+  · intro _ _ h; simpa [eq_le, eq_infₛ] using h
+  · intros; simp [eq_le, eq_top]
+  · intros; simp [eq_le, eq_bot]
 #align complete_lattice.copy CompleteLattice.copy
 
 --Porting note: original proof uses
@@ -107,16 +109,16 @@ def CompleteLattice.copy (c : CompleteLattice α) (le : α → α → Prop)
 /-- A function to create a provable equal copy of a frame with possibly different definitional
 equalities. -/
 def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
-    (top : α) (eq_top : top = (by infer_instance : Top α).top) (bot : α)
-    (eq_bot : bot = (by infer_instance : Bot α).bot) (sup : α → α → α)
-    (eq_sup : sup = (by infer_instance : HasSup α).sup) (inf : α → α → α)
-    (eq_inf : inf = (by infer_instance : HasInf α).inf) (Sup : Set α → α)
-    (eq_Sup : Sup = (by infer_instance : SupSet α).supₛ) (Inf : Set α → α)
-    (eq_Inf : Inf = (by infer_instance : InfSet α).infₛ) : Frame α :=
+    (top : α) (eq_top : top = (by infer_instance : Top α).top)
+    (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf)
+    (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
+    (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) : Frame α :=
   { CompleteLattice.copy (@Frame.toCompleteLattice α c) le eq_le top eq_top bot eq_bot
-      sup eq_sup inf eq_inf Sup eq_Sup Inf eq_Inf with
+      sup eq_sup inf eq_inf supₛ eq_supₛ infₛ eq_infₛ with
     inf_supₛ_le_supᵢ_inf := fun a s => by
-      simp [eq_le, eq_sup, eq_inf, eq_Sup, @Order.Frame.inf_supₛ_le_supᵢ_inf α _ a s] }
+      simp [eq_le, eq_sup, eq_inf, eq_supₛ, @Order.Frame.inf_supₛ_le_supᵢ_inf α _ a s] }
 #align frame.copy Frame.copy
 
 --Porting note: original proof uses
@@ -124,45 +126,47 @@ def Frame.copy (c : Frame α) (le : α → α → Prop) (eq_le : le = (by infer_
 /-- A function to create a provable equal copy of a coframe with possibly different definitional
 equalities. -/
 def Coframe.copy (c : Coframe α) (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
-    (top : α) (eq_top : top = (by infer_instance : Top α).top) (bot : α)
-    (eq_bot : bot = (by infer_instance : Bot α).bot) (sup : α → α → α)
-    (eq_sup : sup = (by infer_instance : HasSup α).sup) (inf : α → α → α)
-    (eq_inf : inf = (by infer_instance : HasInf α).inf) (Sup : Set α → α)
-    (eq_Sup : Sup = (by infer_instance : SupSet α).supₛ) (Inf : Set α → α)
-    (eq_Inf : Inf = (by infer_instance : InfSet α).infₛ) : Coframe α :=
+    (top : α) (eq_top : top = (by infer_instance : Top α).top)
+    (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf)
+    (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
+    (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) : Coframe α :=
   { CompleteLattice.copy (@Coframe.toCompleteLattice α c) le eq_le top eq_top bot eq_bot sup
-        eq_sup inf eq_inf Sup eq_Sup Inf eq_Inf with
+        eq_sup inf eq_inf supₛ eq_supₛ infₛ eq_infₛ with
     infᵢ_sup_le_sup_infₛ := fun a s => by
-      simp [eq_le, eq_sup, eq_inf, eq_Inf, @Order.Coframe.infᵢ_sup_le_sup_infₛ α _ a s] }
+      simp [eq_le, eq_sup, eq_inf, eq_infₛ, @Order.Coframe.infᵢ_sup_le_sup_infₛ α _ a s] }
 #align coframe.copy Coframe.copy
 
 /-- A function to create a provable equal copy of a complete distributive lattice
 with possibly different definitional equalities. -/
-def CompleteDistribLattice.copy (c : CompleteDistribLattice α) (le : α → α → Prop)
-    (eq_le : le = (by infer_instance : LE α).le) (top : α)
-    (eq_top : top = (by infer_instance : Top α).top) (bot : α)
-    (eq_bot : bot = (by infer_instance : Bot α).bot) (sup : α → α → α)
-    (eq_sup : sup = (by infer_instance : HasSup α).sup) (inf : α → α → α)
-    (eq_inf : inf = (by infer_instance : HasInf α).inf) (Sup : Set α → α)
-    (eq_Sup : Sup = (by infer_instance : SupSet α).supₛ) (Inf : Set α → α)
-    (eq_Inf : Inf = (by infer_instance : InfSet α).infₛ) : CompleteDistribLattice α :=
+def CompleteDistribLattice.copy (c : CompleteDistribLattice α)
+    (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
+    (top : α) (eq_top : top = (by infer_instance : Top α).top)
+    (bot : α) (eq_bot : bot = (by infer_instance : Bot α).bot)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf)
+    (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
+    (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) :
+    CompleteDistribLattice α :=
   { Frame.copy (@CompleteDistribLattice.toFrame α c) le eq_le top eq_top bot eq_bot sup eq_sup inf
-      eq_inf Sup eq_Sup Inf eq_Inf,
+      eq_inf supₛ eq_supₛ infₛ eq_infₛ,
     Coframe.copy (@CompleteDistribLattice.toCoframe α c) le eq_le top eq_top bot eq_bot sup eq_sup
-      inf eq_inf Sup eq_Sup Inf eq_Inf with }
+      inf eq_inf supₛ eq_supₛ infₛ eq_infₛ with }
 #align complete_distrib_lattice.copy CompleteDistribLattice.copy
 
 --Porting note: original proof uses
 -- `all_goals { abstract { subst_vars, casesI c, simp_rw le_eq, assumption } }`
 /-- A function to create a provable equal copy of a conditionally complete lattice
 with possibly different definitional equalities. -/
-def ConditionallyCompleteLattice.copy (c : ConditionallyCompleteLattice α) (le : α → α → Prop)
-    (eq_le : le = (by infer_instance : LE α).le) (sup : α → α → α)
-    (eq_sup : sup = (by infer_instance : HasSup α).sup) (inf : α → α → α)
-    (eq_inf : inf = (by infer_instance : HasInf α).inf) (Sup : Set α → α)
-    (eq_Sup : Sup = (by infer_instance : SupSet α).supₛ) (Inf : Set α → α)
-    (eq_Inf : Inf = (by infer_instance : InfSet α).infₛ) : ConditionallyCompleteLattice α := by
-  refine' { le := le, sup := sup, inf := inf, supₛ := Sup, infₛ := Inf.. }
+def ConditionallyCompleteLattice.copy (c : ConditionallyCompleteLattice α)
+    (le : α → α → Prop) (eq_le : le = (by infer_instance : LE α).le)
+    (sup : α → α → α) (eq_sup : sup = (by infer_instance : HasSup α).sup)
+    (inf : α → α → α) (eq_inf : inf = (by infer_instance : HasInf α).inf)
+    (supₛ : Set α → α) (eq_supₛ : supₛ = (by infer_instance : SupSet α).supₛ)
+    (infₛ : Set α → α) (eq_infₛ : infₛ = (by infer_instance : InfSet α).infₛ) :
+    ConditionallyCompleteLattice α := by
+  refine' { le := le, sup := sup, inf := inf, supₛ := supₛ, infₛ := infₛ.. }
   · intro a b; exact le a b ∧ ¬ le b a
   · intros; simp [eq_le]
   · intro _ _ _ hab hbc; rw [eq_le] at hab hbc ⊢; exact le_trans hab hbc
feat: port Order.Copy (#1202)

Dependencies 61

62 files ported (100.0%)
35181 lines ported (100.0%)

All dependencies are ported!