ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- GaloisInsertion.leftInverse_l_u
theorem leftInverse_l_u [Preorder α] [PartialOrder β] (gi : GaloisInsertion l u) :
    LeftInverse l u 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [PartialOrder β] (gi : GaloisInsertion l u)
Goal: Function.LeftInverse l u
-- GaloisInsertion.l_top
theorem l_top [Preorder α] [PartialOrder β] [OrderTop α] [OrderTop β]
    (gi : GaloisInsertion l u) : l ⊤ = ⊤ 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [PartialOrder β] [OrderTop α] [OrderTop β] (gi : GaloisInsertion l u)
Goal: l ⊤ = ⊤
-- GaloisInsertion.l_surjective
theorem l_surjective [Preorder α] [PartialOrder β] (gi : GaloisInsertion l u) : Surjective l 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [PartialOrder β] (gi : GaloisInsertion l u)
Goal: Function.Surjective l
-- GaloisInsertion.u_injective
theorem u_injective [Preorder α] [PartialOrder β] (gi : GaloisInsertion l u) : Injective u 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [PartialOrder β] (gi : GaloisInsertion l u)
Goal: Function.Injective u
-- GaloisInsertion.l_sup_u
theorem l_sup_u [SemilatticeSup α] [SemilatticeSup β] (gi : GaloisInsertion l u) (a b : β) :
    l (u a ⊔ u b) = a ⊔ b 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [SemilatticeSup α] [SemilatticeSup β] (gi : GaloisInsertion l u) (a b : β)
Goal: l (u a ⊔ u b) = a ⊔ b
-- GaloisInsertion.l_iSup_u
theorem l_iSup_u [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) {ι : Sort x}
    (f : ι → β) : l (⨆ i, u (f i)) = ⨆ i, f i 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) {ι : Sort x} (f : ι → β)
Goal: l (⨆ i, u (f i)) = ⨆ i, f i
-- GaloisInsertion.l_biSup_u
theorem l_biSup_u [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) {ι : Sort x}
    {p : ι → Prop} (f : ∀ i, p i → β) : l (⨆ (i) (hi), u (f i hi)) = ⨆ (i) (hi), f i hi 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) {ι : Sort x} {p : ι → Prop} (f : (i : ι) → p i → β)
Goal: l (⨆ i, ⨆ (hi : p i), u (f i hi)) = ⨆ i, ⨆ (hi : p i), f i hi
-- GaloisInsertion.l_sSup_u_image
theorem l_sSup_u_image [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u)
    (s : Set β) : l (sSup (u '' s)) = sSup s 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) (s : Set β)
Goal: l (sSup (u '' s)) = sSup s
-- GaloisInsertion.l_inf_u
theorem l_inf_u [SemilatticeInf α] [SemilatticeInf β] (gi : GaloisInsertion l u) (a b : β) :
    l (u a ⊓ u b) = a ⊓ b 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [SemilatticeInf α] [SemilatticeInf β] (gi : GaloisInsertion l u) (a b : β)
Goal: l (u a ⊓ u b) = a ⊓ b
-- GaloisInsertion.l_iInf_u
theorem l_iInf_u [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) {ι : Sort x}
    (f : ι → β) : l (⨅ i, u (f i)) = ⨅ i, f i 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) {ι : Sort x} (f : ι → β)
Goal: l (⨅ i, u (f i)) = ⨅ i, f i
-- GaloisInsertion.l_biInf_u
theorem l_biInf_u [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) {ι : Sort x}
    {p : ι → Prop} (f : ∀ (i) (_ : p i), β) : l (⨅ (i) (hi), u (f i hi)) = ⨅ (i) (hi), f i hi 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) {ι : Sort x} {p : ι → Prop} (f : (i : ι) → p i → β)
Goal: l (⨅ i, ⨅ (hi : p i), u (f i hi)) = ⨅ i, ⨅ (hi : p i), f i hi
-- GaloisInsertion.l_sInf_u_image
theorem l_sInf_u_image [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u)
    (s : Set β) : l (sInf (u '' s)) = sInf s 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) (s : Set β)
Goal: l (sInf (u '' s)) = sInf s
-- GaloisInsertion.l_iInf_of_ul_eq_self
theorem l_iInf_of_ul_eq_self [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u)
    {ι : Sort x} (f : ι → α) (hf : ∀ i, u (l (f i)) = f i) : l (⨅ i, f i) = ⨅ i, l (f i) 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) {ι : Sort x} (f : ι → α) (hf : ∀ (i : ι), u (l (f i)) = f i)
Goal: l (⨅ i, f i) = ⨅ i, l (f i)
-- GaloisInsertion.l_biInf_of_ul_eq_self
theorem l_biInf_of_ul_eq_self [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u)
    {ι : Sort x} {p : ι → Prop} (f : ∀ (i) (_ : p i), α) (hf : ∀ i hi, u (l (f i hi)) = f i hi) :
    l (⨅ (i) (hi), f i hi) = ⨅ (i) (hi), l (f i hi) 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisInsertion l u) {ι : Sort x} {p : ι → Prop} (f : (i : ι) → p i → α) (hf : ∀ (i : ι) (hi : p i), u (l (f i hi)) = f i hi)
Goal: l (⨅ i, ⨅ (hi : p i), f i hi) = ⨅ i, ⨅ (hi : p i), l (f i hi)
-- GaloisInsertion.u_le_u_iff
theorem u_le_u_iff [Preorder α] [Preorder β] (gi : GaloisInsertion l u) {a b} : u a ≤ u b ↔ a ≤ b 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [Preorder β] (gi : GaloisInsertion l u) {a b : β}
Goal: u a ≤ u b ↔ a ≤ b
-- GaloisInsertion.strictMono_u
theorem strictMono_u [Preorder α] [Preorder β] (gi : GaloisInsertion l u) : StrictMono u 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [Preorder β] (gi : GaloisInsertion l u)
Goal: StrictMono u
-- GaloisInsertion.isLUB_of_u_image
theorem isLUB_of_u_image [Preorder α] [Preorder β] (gi : GaloisInsertion l u) {s : Set β} {a : α}
    (hs : IsLUB (u '' s) a) : IsLUB s (l a) 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [Preorder β] (gi : GaloisInsertion l u) {s : Set β} {a : α} (hs : IsLUB (u '' s) a)
Goal: IsLUB s (l a)
-- GaloisInsertion.isGLB_of_u_image
theorem isGLB_of_u_image [Preorder α] [Preorder β] (gi : GaloisInsertion l u) {s : Set β} {a : α}
    (hs : IsGLB (u '' s) a) : IsGLB s (l a) 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [Preorder β] (gi : GaloisInsertion l u) {s : Set β} {a : α} (hs : IsGLB (u '' s) a)
Goal: IsGLB s (l a)
-- GaloisCoinsertion.choice_eq
structure GaloisCoinsertion [Preorder α] [Preorder β] (l : α → β) (u : β → α) where
    choice : ∀ x : β, x ≤ l (u x) → α
    gc : GaloisConnection l u
    u_l_le : ∀ x, u (l x) ≤ x
    choice_eq : ∀ a h, choice a h = u a
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (self : GaloisCoinsertion l u) (a : β) (h : a ≤ l (u a))
Goal: self.choice a h = u a
-- GaloisCoinsertion.gc
structure GaloisCoinsertion [Preorder α] [Preorder β] (l : α → β) (u : β → α) where
    choice : ∀ x : β, x ≤ l (u x) → α
    gc : GaloisConnection l u
    u_l_le : ∀ x, u (l x) ≤ x
    choice_eq : ∀ a h, choice a h = u a
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (self : GaloisCoinsertion l u)
Goal: GaloisConnection l u
-- GaloisCoinsertion.u_l_le
structure GaloisCoinsertion [Preorder α] [Preorder β] (l : α → β) (u : β → α) where
    choice : ∀ x : β, x ≤ l (u x) → α
    gc : GaloisConnection l u
    u_l_le : ∀ x, u (l x) ≤ x
    choice_eq : ∀ a h, choice a h = u a
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (self : GaloisCoinsertion l u) (x : α)
Goal: u (l x) ≤ x
-- GaloisCoinsertion.u_l_eq
theorem u_l_eq [PartialOrder α] [Preorder β] (gi : GaloisCoinsertion l u) (a : α) : u (l a) = a 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [PartialOrder α] [Preorder β] (gi : GaloisCoinsertion l u) (a : α)
Goal: u (l a) = a
-- GaloisCoinsertion.u_l_leftInverse
theorem u_l_leftInverse [PartialOrder α] [Preorder β] (gi : GaloisCoinsertion l u) :
    LeftInverse u l 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [PartialOrder α] [Preorder β] (gi : GaloisCoinsertion l u)
Goal: Function.LeftInverse u l
-- GaloisCoinsertion.u_bot
theorem u_bot [PartialOrder α] [Preorder β] [OrderBot α] [OrderBot β] (gi : GaloisCoinsertion l u) :
    u ⊥ = ⊥ 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [PartialOrder α] [Preorder β] [OrderBot α] [OrderBot β] (gi : GaloisCoinsertion l u)
Goal: u ⊥ = ⊥
-- GaloisCoinsertion.u_surjective
theorem u_surjective [PartialOrder α] [Preorder β] (gi : GaloisCoinsertion l u) : Surjective u 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [PartialOrder α] [Preorder β] (gi : GaloisCoinsertion l u)
Goal: Function.Surjective u
-- GaloisCoinsertion.l_injective
theorem l_injective [PartialOrder α] [Preorder β] (gi : GaloisCoinsertion l u) : Injective l 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [PartialOrder α] [Preorder β] (gi : GaloisCoinsertion l u)
Goal: Function.Injective l
-- GaloisCoinsertion.u_inf_l
theorem u_inf_l [SemilatticeInf α] [SemilatticeInf β] (gi : GaloisCoinsertion l u) (a b : α) :
    u (l a ⊓ l b) = a ⊓ b 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [SemilatticeInf α] [SemilatticeInf β] (gi : GaloisCoinsertion l u) (a b : α)
Goal: u (l a ⊓ l b) = a ⊓ b
-- GaloisCoinsertion.u_iInf_l
theorem u_iInf_l [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u) {ι : Sort x}
    (f : ι → α) : u (⨅ i, l (f i)) = ⨅ i, f i 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u) {ι : Sort x} (f : ι → α)
Goal: u (⨅ i, l (f i)) = ⨅ i, f i
-- GaloisCoinsertion.u_sInf_l_image
theorem u_sInf_l_image [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u)
    (s : Set α) : u (sInf (l '' s)) = sInf s 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u) (s : Set α)
Goal: u (sInf (l '' s)) = sInf s
-- GaloisCoinsertion.u_sup_l
theorem u_sup_l [SemilatticeSup α] [SemilatticeSup β] (gi : GaloisCoinsertion l u) (a b : α) :
    u (l a ⊔ l b) = a ⊔ b 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [SemilatticeSup α] [SemilatticeSup β] (gi : GaloisCoinsertion l u) (a b : α)
Goal: u (l a ⊔ l b) = a ⊔ b
-- GaloisCoinsertion.u_iSup_l
theorem u_iSup_l [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u) {ι : Sort x}
    (f : ι → α) : u (⨆ i, l (f i)) = ⨆ i, f i 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u) {ι : Sort x} (f : ι → α)
Goal: u (⨆ i, l (f i)) = ⨆ i, f i
-- GaloisCoinsertion.u_biSup_l
theorem u_biSup_l [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u) {ι : Sort x}
    {p : ι → Prop} (f : ∀ (i) (_ : p i), α) : u (⨆ (i) (hi), l (f i hi)) = ⨆ (i) (hi), f i hi 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u) {ι : Sort x} {p : ι → Prop} (f : (i : ι) → p i → α)
Goal: u (⨆ i, ⨆ (hi : p i), l (f i hi)) = ⨆ i, ⨆ (hi : p i), f i hi
-- GaloisCoinsertion.u_sSup_l_image
theorem u_sSup_l_image [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u)
    (s : Set α) : u (sSup (l '' s)) = sSup s 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u) (s : Set α)
Goal: u (sSup (l '' s)) = sSup s
-- GaloisCoinsertion.u_iSup_of_lu_eq_self
theorem u_iSup_of_lu_eq_self [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u)
    {ι : Sort x} (f : ι → β) (hf : ∀ i, l (u (f i)) = f i) : u (⨆ i, f i) = ⨆ i, u (f i) 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u) {ι : Sort x} (f : ι → β) (hf : ∀ (i : ι), l (u (f i)) = f i)
Goal: u (⨆ i, f i) = ⨆ i, u (f i)
-- GaloisCoinsertion.u_biSup_of_lu_eq_self
theorem u_biSup_of_lu_eq_self [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u)
    {ι : Sort x} {p : ι → Prop} (f : ∀ (i) (_ : p i), β) (hf : ∀ i hi, l (u (f i hi)) = f i hi) :
    u (⨆ (i) (hi), f i hi) = ⨆ (i) (hi), u (f i hi) 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [CompleteLattice α] [CompleteLattice β] (gi : GaloisCoinsertion l u) {ι : Sort x} {p : ι → Prop} (f : (i : ι) → p i → β) (hf : ∀ (i : ι) (hi : p i), l (u (f i hi)) = f i hi)
Goal: u (⨆ i, ⨆ (hi : p i), f i hi) = ⨆ i, ⨆ (hi : p i), u (f i hi)
-- GaloisCoinsertion.l_le_l_iff
theorem l_le_l_iff [Preorder α] [Preorder β] (gi : GaloisCoinsertion l u) {a b} :
    l a ≤ l b ↔ a ≤ b 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [Preorder β] (gi : GaloisCoinsertion l u) {a b : α}
Goal: l a ≤ l b ↔ a ≤ b
-- GaloisCoinsertion.strictMono_l
theorem strictMono_l [Preorder α] [Preorder β] (gi : GaloisCoinsertion l u) : StrictMono l 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [Preorder β] (gi : GaloisCoinsertion l u)
Goal: StrictMono l
-- GaloisCoinsertion.isGLB_of_l_image
theorem isGLB_of_l_image [Preorder α] [Preorder β] (gi : GaloisCoinsertion l u) {s : Set α} {a : β}
    (hs : IsGLB (l '' s) a) : IsGLB s (u a) 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [Preorder β] (gi : GaloisCoinsertion l u) {s : Set α} {a : β} (hs : IsGLB (l '' s) a)
Goal: IsGLB s (u a)
-- GaloisCoinsertion.isLUB_of_l_image
theorem isLUB_of_l_image [Preorder α] [Preorder β] (gi : GaloisCoinsertion l u) {s : Set α} {a : β}
    (hs : IsLUB (l '' s) a) : IsLUB s (u a) 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [Preorder β] (gi : GaloisCoinsertion l u) {s : Set α} {a : β} (hs : IsLUB (l '' s) a)
Goal: IsLUB s (u a)
-- disjointed_zero
@[simp]
theorem disjointed_zero (f : ℕ → α) : disjointed f 0 = f 0 
Arguments: {α : Type u_1} [GeneralizedBooleanAlgebra α] (f : ℕ → α)
Goal: disjointed f 0 = f 0
-- disjointed_succ
theorem disjointed_succ (f : ℕ → α) (n : ℕ) : disjointed f (n + 1) = f (n + 1) \ partialSups f n 
Arguments: {α : Type u_1} [GeneralizedBooleanAlgebra α] (f : ℕ → α) (n : ℕ)
Goal: disjointed f (n + 1) = f (n + 1) \ (partialSups f) n
-- disjointed_le_id
theorem disjointed_le_id : disjointed ≤ (id : (ℕ → α) → ℕ → α) 
Arguments: {α : Type u_1} [GeneralizedBooleanAlgebra α]
Goal: disjointed ≤ id
-- disjointed_le
theorem disjointed_le (f : ℕ → α) : disjointed f ≤ f 
Arguments: {α : Type u_1} [GeneralizedBooleanAlgebra α] (f : ℕ → α)
Goal: disjointed f ≤ f
-- disjoint_disjointed
theorem disjoint_disjointed (f : ℕ → α) : Pairwise (Disjoint on disjointed f) 
Arguments: {α : Type u_1} [GeneralizedBooleanAlgebra α] (f : ℕ → α)
Goal: Pairwise (Disjoint on disjointed f)
-- disjointedRec_zero
@[simp]
theorem disjointedRec_zero {f : ℕ → α} {p : α → Sort*} (hdiff : ∀ ⦃t i⦄, p t → p (t \ f i))
    (h₀ : p (f 0)) : disjointedRec hdiff h₀ = h₀ 
Arguments: {α : Type u_1} [GeneralizedBooleanAlgebra α] {f : ℕ → α} {p : α → Sort u_3} (hdiff : ⦃t : α⦄ → ⦃i : ℕ⦄ → p t → p (t \ f i)) (h₀ : p (f 0))
Goal: disjointedRec hdiff h₀ = h₀
-- Monotone.disjointed_succ
protected lemma Monotone.disjointed_succ {f : ℕ → α} (hf : Monotone f) (n : ℕ) :
    disjointed f (n + 1) = f (n + 1) \ f n 
Arguments: {α : Type u_1} [GeneralizedBooleanAlgebra α] {f : ℕ → α} (hf : Monotone f) (n : ℕ)
Goal: disjointed f (n + 1) = f (n + 1) \ f n
-- Monotone.disjointed_succ_sup
protected lemma Monotone.disjointed_succ_sup {f : ℕ → α} (hf : Monotone f) (n : ℕ) :
    disjointed f (n + 1) ⊔ f n = f (n + 1) 
Arguments: {α : Type u_1} [GeneralizedBooleanAlgebra α] {f : ℕ → α} (hf : Monotone f) (n : ℕ)
Goal: disjointed f (n + 1) ⊔ f n = f (n + 1)
-- partialSups_disjointed
@[simp]
theorem partialSups_disjointed (f : ℕ → α) : partialSups (disjointed f) = partialSups f 
Arguments: {α : Type u_1} [GeneralizedBooleanAlgebra α] (f : ℕ → α)
Goal: partialSups (disjointed f) = partialSups f
-- disjointed_unique
theorem disjointed_unique {f d : ℕ → α} (hdisj : Pairwise (Disjoint on d))
    (hsups : partialSups d = partialSups f) : d = disjointed f 
Arguments: {α : Type u_1} [GeneralizedBooleanAlgebra α] {f d : ℕ → α} (hdisj : Pairwise (Disjoint on d)) (hsups : partialSups d = partialSups f)
Goal: d = disjointed f
-- iSup_disjointed
theorem iSup_disjointed (f : ℕ → α) : ⨆ n, disjointed f n = ⨆ n, f n 
Arguments: {α : Type u_1} [CompleteBooleanAlgebra α] (f : ℕ → α)
Goal: ⨆ n, disjointed f n = ⨆ n, f n
-- disjointed_eq_inf_compl
theorem disjointed_eq_inf_compl (f : ℕ → α) (n : ℕ) : disjointed f n = f n ⊓ ⨅ i < n, (f i)ᶜ 
Arguments: {α : Type u_1} [CompleteBooleanAlgebra α] (f : ℕ → α) (n : ℕ)
Goal: disjointed f n = f n ⊓ ⨅ i, ⨅ (_ : i < n), (f i)ᶜ
-- disjointed_subset
theorem disjointed_subset (f : ℕ → Set α) (n : ℕ) : disjointed f n ⊆ f n 
Arguments: {α : Type u_1} (f : ℕ → Set α) (n : ℕ)
Goal: disjointed f n ⊆ f n
-- iUnion_disjointed
theorem iUnion_disjointed {f : ℕ → Set α} : ⋃ n, disjointed f n = ⋃ n, f n 
Arguments: {α : Type u_1} {f : ℕ → Set α}
Goal: ⋃ n, disjointed f n = ⋃ n, f n
-- disjointed_eq_inter_compl
theorem disjointed_eq_inter_compl (f : ℕ → Set α) (n : ℕ) :
    disjointed f n = f n ∩ ⋂ i < n, (f i)ᶜ 
Arguments: {α : Type u_1} (f : ℕ → Set α) (n : ℕ)
Goal: disjointed f n = f n ∩ ⋂ i, ⋂ (_ : i < n), (f i)ᶜ
-- preimage_find_eq_disjointed
theorem preimage_find_eq_disjointed (s : ℕ → Set α) (H : ∀ x, ∃ n, x ∈ s n)
    [∀ x n, Decidable (x ∈ s n)] (n : ℕ) : (fun x => Nat.find (H x)) ⁻¹' {n} = disjointed s n 
Arguments: {α : Type u_1} (s : ℕ → Set α) (H : ∀ (x : α), ∃ n, x ∈ s n) [(x : α) → (n : ℕ) → Decidable (x ∈ s n)] (n : ℕ)
Goal: (fun x => Nat.find ⋯) ⁻¹' {n} = disjointed s n
-- Sublattice.infClosed'
structure Sublattice where
    carrier : Set α
  supClosed' : SupClosed carrier
  infClosed' : InfClosed carrier
Arguments: {α : Type u_2} [Lattice α] (self : Sublattice α)
Goal: InfClosed self.carrier
-- Sublattice.supClosed'
structure Sublattice where
    carrier : Set α
  supClosed' : SupClosed carrier
  infClosed' : InfClosed carrier
Arguments: {α : Type u_2} [Lattice α] (self : Sublattice α)
Goal: SupClosed self.carrier
-- Sublattice.coe_inj
lemma coe_inj : (L : Set α) = M ↔ L = M 
Arguments: {α : Type u_2} [Lattice α] {L M : Sublattice α}
Goal: ↑L = ↑M ↔ L = M
-- Sublattice.supClosed
@[simp] lemma supClosed (L : Sublattice α) : SupClosed (L : Set α) 
Arguments: {α : Type u_2} [Lattice α] (L : Sublattice α)
Goal: SupClosed ↑L
-- Sublattice.infClosed
@[simp] lemma infClosed (L : Sublattice α) : InfClosed (L : Set α) 
Arguments: {α : Type u_2} [Lattice α] (L : Sublattice α)
Goal: InfClosed ↑L
-- Sublattice.isSublattice
@[simp] lemma isSublattice (L : Sublattice α) : IsSublattice (L : Set α) 
Arguments: {α : Type u_2} [Lattice α] (L : Sublattice α)
Goal: IsSublattice ↑L
-- Sublattice.mem_carrier
@[simp] lemma mem_carrier : a ∈ L.carrier ↔ a ∈ L 
Arguments: {α : Type u_2} [Lattice α] {L : Sublattice α} {a : α}
Goal: a ∈ L.carrier ↔ a ∈ L
-- Sublattice.mem_mk
@[simp] lemma mem_mk (h_sup h_inf) : a ∈ mk s h_sup h_inf ↔ a ∈ s 
Arguments: {α : Type u_2} [Lattice α] {s : Set α} {a : α} (h_sup : SupClosed s) (h_inf : InfClosed s)
Goal: a ∈ { carrier := s, supClosed' := h_sup, infClosed' := h_inf } ↔ a ∈ s
-- Sublattice.coe_mk
@[simp, norm_cast] lemma coe_mk (h_sup h_inf) : mk s h_sup h_inf = s 
Arguments: {α : Type u_2} [Lattice α] {s : Set α} (h_sup : SupClosed s) (h_inf : InfClosed s)
Goal: ↑{ carrier := s, supClosed' := h_sup, infClosed' := h_inf } = s
-- Sublattice.mk_le_mk
@[simp] lemma mk_le_mk (hs_sup hs_inf ht_sup ht_inf) :
    mk s hs_sup hs_inf ≤ mk t ht_sup ht_inf ↔ s ⊆ t 
Arguments: {α : Type u_2} [Lattice α] {s t : Set α} (hs_sup : SupClosed s) (hs_inf : InfClosed s) (ht_sup : SupClosed t) (ht_inf : InfClosed t)
Goal: { carrier := s, supClosed' := hs_sup, infClosed' := hs_inf } ≤
    { carrier := t, supClosed' := ht_sup, infClosed' := ht_inf } ↔
  s ⊆ t
-- Sublattice.mk_lt_mk
@[simp] lemma mk_lt_mk (hs_sup hs_inf ht_sup ht_inf) :
    mk s hs_sup hs_inf < mk t ht_sup ht_inf ↔ s ⊂ t 
Arguments: {α : Type u_2} [Lattice α] {s t : Set α} (hs_sup : SupClosed s) (hs_inf : InfClosed s) (ht_sup : SupClosed t) (ht_inf : InfClosed t)
Goal: { carrier := s, supClosed' := hs_sup, infClosed' := hs_inf } <
    { carrier := t, supClosed' := ht_sup, infClosed' := ht_inf } ↔
  s ⊂ t
-- Sublattice.coe_copy
@[simp, norm_cast] lemma coe_copy (L : Sublattice α) (s : Set α) (hs) : L.copy s hs = s 
Arguments: {α : Type u_2} [Lattice α] (L : Sublattice α) (s : Set α) (hs : s = ↑L)
Goal: ↑(L.copy s hs) = s
-- Sublattice.copy_eq
lemma copy_eq (L : Sublattice α) (s : Set α) (hs) : L.copy s hs = L 
Arguments: {α : Type u_2} [Lattice α] (L : Sublattice α) (s : Set α) (hs : s = ↑L)
Goal: L.copy s hs = L
-- Sublattice.ext
lemma ext : (∀ a, a ∈ L ↔ a ∈ M) → L = M 
Arguments: {α : Type u_2} [Lattice α] {L M : Sublattice α}
Goal: (∀ (a : α), a ∈ L ↔ a ∈ M) → L = M
-- Sublattice.coe_sup
@[simp, norm_cast] lemma coe_sup (a b : L) : a ⊔ b = (a : α) ⊔ b 
Arguments: {α : Type u_2} [Lattice α] {L : Sublattice α} (a b : ↥L)
Goal: ↑(a ⊔ b) = ↑a ⊔ ↑b
-- Sublattice.coe_inf
@[simp, norm_cast] lemma coe_inf (a b : L) : a ⊓ b = (a : α) ⊓ b 
Arguments: {α : Type u_2} [Lattice α] {L : Sublattice α} (a b : ↥L)
Goal: ↑(a ⊓ b) = ↑a ⊓ ↑b
-- Sublattice.mk_sup_mk
@[simp] lemma mk_sup_mk (a b : α) (ha hb) : (⟨a, ha⟩ ⊔ ⟨b, hb⟩ : L) = ⟨a ⊔ b, L.supClosed ha hb⟩ 
Arguments: {α : Type u_2} [Lattice α] {L : Sublattice α} (a b : α) (ha : a ∈ L) (hb : b ∈ L)
Goal: ⟨a, ha⟩ ⊔ ⟨b, hb⟩ = ⟨a ⊔ b, ⋯⟩
-- Sublattice.mk_inf_mk
@[simp] lemma mk_inf_mk (a b : α) (ha hb) : (⟨a, ha⟩ ⊓ ⟨b, hb⟩ : L) = ⟨a ⊓ b, L.infClosed ha hb⟩ 
Arguments: {α : Type u_2} [Lattice α] {L : Sublattice α} (a b : α) (ha : a ∈ L) (hb : b ∈ L)
Goal: ⟨a, ha⟩ ⊓ ⟨b, hb⟩ = ⟨a ⊓ b, ⋯⟩
-- Sublattice.coe_subtype
@[simp, norm_cast] lemma coe_subtype (L : Sublattice α) : L.subtype = ((↑) : L → α) 
Arguments: {α : Type u_2} [Lattice α] (L : Sublattice α)
Goal: ⇑L.subtype = Subtype.val
-- Sublattice.subtype_apply
lemma subtype_apply (L : Sublattice α) (a : L) : L.subtype a = a 
Arguments: {α : Type u_2} [Lattice α] (L : Sublattice α) (a : ↥L)
Goal: L.subtype a = ↑a
-- Sublattice.subtype_injective
lemma subtype_injective (L : Sublattice α) : Injective <| subtype L 
Arguments: {α : Type u_2} [Lattice α] (L : Sublattice α)
Goal: Function.Injective ⇑L.subtype
-- Sublattice.coe_inclusion
@[simp] lemma coe_inclusion (h : L ≤ M) : inclusion h = Set.inclusion h 
Arguments: {α : Type u_2} [Lattice α] {L M : Sublattice α} (h : L ≤ M)
Goal: ⇑(Sublattice.inclusion h) = Set.inclusion h
-- Sublattice.inclusion_apply
lemma inclusion_apply (h : L ≤ M) (a : L) : inclusion h a = Set.inclusion h a 
Arguments: {α : Type u_2} [Lattice α] {L M : Sublattice α} (h : L ≤ M) (a : ↥L)
Goal: (Sublattice.inclusion h) a = Set.inclusion h a
-- Sublattice.inclusion_injective
lemma inclusion_injective (h : L ≤ M) : Injective <| inclusion h 
Arguments: {α : Type u_2} [Lattice α] {L M : Sublattice α} (h : L ≤ M)
Goal: Function.Injective ⇑(Sublattice.inclusion h)
-- Sublattice.inclusion_rfl
@[simp] lemma inclusion_rfl (L : Sublattice α) : inclusion le_rfl = LatticeHom.id L 
Arguments: {α : Type u_2} [Lattice α] (L : Sublattice α)
Goal: Sublattice.inclusion ⋯ = LatticeHom.id ↥L
-- Sublattice.subtype_comp_inclusion
@[simp] lemma subtype_comp_inclusion (h : L ≤ M) : M.subtype.comp (inclusion h) = L.subtype 
Arguments: {α : Type u_2} [Lattice α] {L M : Sublattice α} (h : L ≤ M)
Goal: M.subtype.comp (Sublattice.inclusion h) = L.subtype
-- Sublattice.coe_top
@[simp, norm_cast] lemma coe_top : (⊤ : Sublattice α) = (univ : Set α) 
Arguments: {α : Type u_2} [Lattice α]
Goal: ↑⊤ = Set.univ
-- Sublattice.coe_bot
@[simp, norm_cast] lemma coe_bot : (⊥ : Sublattice α) = (∅ : Set α) 
Arguments: {α : Type u_2} [Lattice α]
Goal: ↑⊥ = ∅
-- Sublattice.coe_inf'
@[simp, norm_cast] lemma coe_inf' (L M : Sublattice α) : L ⊓ M = (L : Set α) ∩ M 
Arguments: {α : Type u_2} [Lattice α] (L M : Sublattice α)
Goal: ↑(L ⊓ M) = ↑L ∩ ↑M
-- Sublattice.coe_sInf
@[simp, norm_cast] lemma coe_sInf (S : Set (Sublattice α)) : sInf S = ⋂ L ∈ S, (L : Set α) 
Arguments: {α : Type u_2} [Lattice α] (S : Set (Sublattice α))
Goal: ↑(sInf S) = ⋂ L ∈ S, ↑L