ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- infClosure_prod
@[simp] lemma infClosure_prod (s : Set α) (t : Set β) :
    infClosure (s ×ˢ t) = infClosure s ×ˢ infClosure t 
Arguments: {α : Type u_2} {β : Type u_3} [SemilatticeInf α] [SemilatticeInf β] (s : Set α) (t : Set β)
Goal: infClosure (s ×ˢ t) = infClosure s ×ˢ infClosure t
-- latticeClosure_isClosed
@[simps! isClosed]
def latticeClosure : ClosureOperator (Set α) 
Arguments: {α : Type u_2} [Lattice α] (s : Set α)
Goal: latticeClosure.IsClosed s = IsSublattice s
-- subset_latticeClosure
@[simp] lemma subset_latticeClosure : s ⊆ latticeClosure s 
Arguments: {α : Type u_2} [Lattice α] {s : Set α}
Goal: s ⊆ latticeClosure s
-- isSublattice_latticeClosure
@[simp] lemma isSublattice_latticeClosure : IsSublattice (latticeClosure s) 
Arguments: {α : Type u_2} [Lattice α] {s : Set α}
Goal: IsSublattice (latticeClosure s)
-- latticeClosure_min
lemma latticeClosure_min : s ⊆ t → IsSublattice t → latticeClosure s ⊆ t 
Arguments: {α : Type u_2} [Lattice α] {s t : Set α}
Goal: s ⊆ t → IsSublattice t → latticeClosure s ⊆ t
-- latticeClosure_mono
lemma latticeClosure_mono : Monotone (latticeClosure : Set α → Set α) 
Arguments: {α : Type u_2} [Lattice α]
Goal: Monotone ⇑latticeClosure
-- latticeClosure_eq_self
@[simp] lemma latticeClosure_eq_self : latticeClosure s = s ↔ IsSublattice s 
Arguments: {α : Type u_2} [Lattice α] {s : Set α}
Goal: latticeClosure s = s ↔ IsSublattice s
-- latticeClosure_idem
lemma latticeClosure_idem (s : Set α) : latticeClosure (latticeClosure s) = latticeClosure s 
Arguments: {α : Type u_2} [Lattice α] (s : Set α)
Goal: latticeClosure (latticeClosure s) = latticeClosure s
-- latticeClosure_empty
@[simp] lemma latticeClosure_empty : latticeClosure (∅ : Set α) = ∅ 
Arguments: {α : Type u_2} [Lattice α]
Goal: latticeClosure ∅ = ∅
-- latticeClosure_singleton
@[simp] lemma latticeClosure_singleton (a : α) : latticeClosure {a} = {a} 
Arguments: {α : Type u_2} [Lattice α] (a : α)
Goal: latticeClosure {a} = {a}
-- latticeClosure_univ
@[simp] lemma latticeClosure_univ : latticeClosure (Set.univ : Set α) = Set.univ 
Arguments: {α : Type u_2} [Lattice α]
Goal: latticeClosure Set.univ = Set.univ
-- SupClosed.infClosure
protected lemma SupClosed.infClosure (hs : SupClosed s) : SupClosed (infClosure s) 
Arguments: {α : Type u_2} [DistribLattice α] {s : Set α} (hs : SupClosed s)
Goal: SupClosed (infClosure s)
-- InfClosed.supClosure
protected lemma InfClosed.supClosure (hs : InfClosed s) : InfClosed (supClosure s) 
Arguments: {α : Type u_2} [DistribLattice α] {s : Set α} (hs : InfClosed s)
Goal: InfClosed (supClosure s)
-- supClosure_infClosure
@[simp] lemma supClosure_infClosure (s : Set α) : supClosure (infClosure s) = latticeClosure s 
Arguments: {α : Type u_2} [DistribLattice α] (s : Set α)
Goal: supClosure (infClosure s) = latticeClosure s
-- infClosure_supClosure
@[simp] lemma infClosure_supClosure (s : Set α) : infClosure (supClosure s) = latticeClosure s 
Arguments: {α : Type u_2} [DistribLattice α] (s : Set α)
Goal: infClosure (supClosure s) = latticeClosure s
-- Set.Finite.latticeClosure
lemma Set.Finite.latticeClosure (hs : s.Finite) : (latticeClosure s).Finite 
Arguments: {α : Type u_2} [DistribLattice α] {s : Set α} (hs : s.Finite)
Goal: (latticeClosure s).Finite
-- latticeClosure_prod
@[simp] lemma latticeClosure_prod (s : Set α) (t : Set β) :
    latticeClosure (s ×ˢ t) = latticeClosure s ×ˢ latticeClosure t 
Arguments: {α : Type u_2} {β : Type u_3} [DistribLattice α] [DistribLattice β] (s : Set α) (t : Set β)
Goal: latticeClosure (s ×ˢ t) = latticeClosure s ×ˢ latticeClosure t
-- SemilatticeSup.sup_le
class SemilatticeSup (α : Type u) extends Sup α, PartialOrder α where
    protected le_sup_left : ∀ a b : α, a ≤ a ⊔ b
    protected le_sup_right : ∀ a b : α, b ≤ a ⊔ b
    protected sup_le : ∀ a b c : α, a ≤ c → b ≤ c → a ⊔ b ≤ c
Arguments: {α : Type u} [self : SemilatticeSup α] (a b c : α)
Goal: a ≤ c → b ≤ c → a ⊔ b ≤ c
-- SemilatticeSup.le_sup_left
class SemilatticeSup (α : Type u) extends Sup α, PartialOrder α where
    protected le_sup_left : ∀ a b : α, a ≤ a ⊔ b
    protected le_sup_right : ∀ a b : α, b ≤ a ⊔ b
    protected sup_le : ∀ a b c : α, a ≤ c → b ≤ c → a ⊔ b ≤ c
Arguments: {α : Type u} [self : SemilatticeSup α] (a b : α)
Goal: a ≤ a ⊔ b
-- SemilatticeSup.le_sup_right
class SemilatticeSup (α : Type u) extends Sup α, PartialOrder α where
    protected le_sup_left : ∀ a b : α, a ≤ a ⊔ b
    protected le_sup_right : ∀ a b : α, b ≤ a ⊔ b
    protected sup_le : ∀ a b c : α, a ≤ c → b ≤ c → a ⊔ b ≤ c
Arguments: {α : Type u} [self : SemilatticeSup α] (a b : α)
Goal: b ≤ a ⊔ b
-- le_sup_left
@[simp]
theorem le_sup_left : a ≤ a ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α}
Goal: a ≤ a ⊔ b
-- le_sup_right
@[simp]
theorem le_sup_right : b ≤ a ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α}
Goal: b ≤ a ⊔ b
-- le_sup_of_le_left
theorem le_sup_of_le_left (h : c ≤ a) : c ≤ a ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b c : α} (h : c ≤ a)
Goal: c ≤ a ⊔ b
-- le_sup_of_le_right
theorem le_sup_of_le_right (h : c ≤ b) : c ≤ a ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b c : α} (h : c ≤ b)
Goal: c ≤ a ⊔ b
-- lt_sup_of_lt_left
theorem lt_sup_of_lt_left (h : c < a) : c < a ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b c : α} (h : c < a)
Goal: c < a ⊔ b
-- lt_sup_of_lt_right
theorem lt_sup_of_lt_right (h : c < b) : c < a ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b c : α} (h : c < b)
Goal: c < a ⊔ b
-- sup_le
theorem sup_le : a ≤ c → b ≤ c → a ⊔ b ≤ c 
Arguments: {α : Type u} [SemilatticeSup α] {a b c : α}
Goal: a ≤ c → b ≤ c → a ⊔ b ≤ c
-- sup_le_iff
@[simp]
theorem sup_le_iff : a ⊔ b ≤ c ↔ a ≤ c ∧ b ≤ c 
Arguments: {α : Type u} [SemilatticeSup α] {a b c : α}
Goal: a ⊔ b ≤ c ↔ a ≤ c ∧ b ≤ c
-- sup_eq_left
@[simp]
theorem sup_eq_left : a ⊔ b = a ↔ b ≤ a 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α}
Goal: a ⊔ b = a ↔ b ≤ a
-- sup_eq_right
@[simp]
theorem sup_eq_right : a ⊔ b = b ↔ a ≤ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α}
Goal: a ⊔ b = b ↔ a ≤ b
-- left_eq_sup
@[simp]
theorem left_eq_sup : a = a ⊔ b ↔ b ≤ a 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α}
Goal: a = a ⊔ b ↔ b ≤ a
-- right_eq_sup
@[simp]
theorem right_eq_sup : b = a ⊔ b ↔ a ≤ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α}
Goal: b = a ⊔ b ↔ a ≤ b
-- left_lt_sup
@[simp]
theorem left_lt_sup : a < a ⊔ b ↔ ¬b ≤ a 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α}
Goal: a < a ⊔ b ↔ ¬b ≤ a
-- right_lt_sup
@[simp]
theorem right_lt_sup : b < a ⊔ b ↔ ¬a ≤ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α}
Goal: b < a ⊔ b ↔ ¬a ≤ b
-- left_or_right_lt_sup
theorem left_or_right_lt_sup (h : a ≠ b) : a < a ⊔ b ∨ b < a ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α} (h : a ≠ b)
Goal: a < a ⊔ b ∨ b < a ⊔ b
-- le_iff_exists_sup
theorem le_iff_exists_sup : a ≤ b ↔ ∃ c, b = a ⊔ c 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α}
Goal: a ≤ b ↔ ∃ c, b = a ⊔ c
-- sup_le_sup
@[gcongr]
theorem sup_le_sup (h₁ : a ≤ b) (h₂ : c ≤ d) : a ⊔ c ≤ b ⊔ d 
Arguments: {α : Type u} [SemilatticeSup α] {a b c d : α} (h₁ : a ≤ b) (h₂ : c ≤ d)
Goal: a ⊔ c ≤ b ⊔ d
-- sup_le_sup_left
@[gcongr]
theorem sup_le_sup_left (h₁ : a ≤ b) (c) : c ⊔ a ≤ c ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α} (h₁ : a ≤ b) (c : α)
Goal: c ⊔ a ≤ c ⊔ b
-- sup_le_sup_right
@[gcongr]
theorem sup_le_sup_right (h₁ : a ≤ b) (c) : a ⊔ c ≤ b ⊔ c 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α} (h₁ : a ≤ b) (c : α)
Goal: a ⊔ c ≤ b ⊔ c
-- sup_idem
theorem sup_idem (a : α) : a ⊔ a = a 
Arguments: {α : Type u} [SemilatticeSup α] (a : α)
Goal: a ⊔ a = a
-- sup_comm
theorem sup_comm (a b : α) : a ⊔ b = b ⊔ a 
Arguments: {α : Type u} [SemilatticeSup α] (a b : α)
Goal: a ⊔ b = b ⊔ a
-- sup_assoc
theorem sup_assoc (a b c : α) : a ⊔ b ⊔ c = a ⊔ (b ⊔ c) 
Arguments: {α : Type u} [SemilatticeSup α] (a b c : α)
Goal: a ⊔ b ⊔ c = a ⊔ (b ⊔ c)
-- sup_left_right_swap
theorem sup_left_right_swap (a b c : α) : a ⊔ b ⊔ c = c ⊔ b ⊔ a 
Arguments: {α : Type u} [SemilatticeSup α] (a b c : α)
Goal: a ⊔ b ⊔ c = c ⊔ b ⊔ a
-- sup_left_idem
theorem sup_left_idem (a b : α) : a ⊔ (a ⊔ b) = a ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] (a b : α)
Goal: a ⊔ (a ⊔ b) = a ⊔ b
-- sup_right_idem
theorem sup_right_idem (a b : α) : a ⊔ b ⊔ b = a ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] (a b : α)
Goal: a ⊔ b ⊔ b = a ⊔ b
-- sup_left_comm
theorem sup_left_comm (a b c : α) : a ⊔ (b ⊔ c) = b ⊔ (a ⊔ c) 
Arguments: {α : Type u} [SemilatticeSup α] (a b c : α)
Goal: a ⊔ (b ⊔ c) = b ⊔ (a ⊔ c)
-- sup_right_comm
theorem sup_right_comm (a b c : α) : a ⊔ b ⊔ c = a ⊔ c ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] (a b c : α)
Goal: a ⊔ b ⊔ c = a ⊔ c ⊔ b
-- sup_sup_sup_comm
theorem sup_sup_sup_comm (a b c d : α) : a ⊔ b ⊔ (c ⊔ d) = a ⊔ c ⊔ (b ⊔ d) 
Arguments: {α : Type u} [SemilatticeSup α] (a b c d : α)
Goal: a ⊔ b ⊔ (c ⊔ d) = a ⊔ c ⊔ (b ⊔ d)
-- sup_sup_distrib_left
theorem sup_sup_distrib_left (a b c : α) : a ⊔ (b ⊔ c) = a ⊔ b ⊔ (a ⊔ c) 
Arguments: {α : Type u} [SemilatticeSup α] (a b c : α)
Goal: a ⊔ (b ⊔ c) = a ⊔ b ⊔ (a ⊔ c)
-- sup_sup_distrib_right
theorem sup_sup_distrib_right (a b c : α) : a ⊔ b ⊔ c = a ⊔ c ⊔ (b ⊔ c) 
Arguments: {α : Type u} [SemilatticeSup α] (a b c : α)
Goal: a ⊔ b ⊔ c = a ⊔ c ⊔ (b ⊔ c)
-- sup_congr_left
theorem sup_congr_left (hb : b ≤ a ⊔ c) (hc : c ≤ a ⊔ b) : a ⊔ b = a ⊔ c 
Arguments: {α : Type u} [SemilatticeSup α] {a b c : α} (hb : b ≤ a ⊔ c) (hc : c ≤ a ⊔ b)
Goal: a ⊔ b = a ⊔ c
-- sup_congr_right
theorem sup_congr_right (ha : a ≤ b ⊔ c) (hb : b ≤ a ⊔ c) : a ⊔ c = b ⊔ c 
Arguments: {α : Type u} [SemilatticeSup α] {a b c : α} (ha : a ≤ b ⊔ c) (hb : b ≤ a ⊔ c)
Goal: a ⊔ c = b ⊔ c
-- sup_eq_sup_iff_left
theorem sup_eq_sup_iff_left : a ⊔ b = a ⊔ c ↔ b ≤ a ⊔ c ∧ c ≤ a ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b c : α}
Goal: a ⊔ b = a ⊔ c ↔ b ≤ a ⊔ c ∧ c ≤ a ⊔ b
-- sup_eq_sup_iff_right
theorem sup_eq_sup_iff_right : a ⊔ c = b ⊔ c ↔ a ≤ b ⊔ c ∧ b ≤ a ⊔ c 
Arguments: {α : Type u} [SemilatticeSup α] {a b c : α}
Goal: a ⊔ c = b ⊔ c ↔ a ≤ b ⊔ c ∧ b ≤ a ⊔ c
-- Ne.lt_sup_or_lt_sup
theorem Ne.lt_sup_or_lt_sup (hab : a ≠ b) : a < a ⊔ b ∨ b < a ⊔ b 
Arguments: {α : Type u} [SemilatticeSup α] {a b : α} (hab : a ≠ b)
Goal: a < a ⊔ b ∨ b < a ⊔ b
-- Monotone.forall_le_of_antitone
theorem Monotone.forall_le_of_antitone {β : Type*} [Preorder β] {f g : α → β} (hf : Monotone f)
    (hg : Antitone g) (h : f ≤ g) (m n : α) : f m ≤ g n 
Arguments: {α : Type u} [SemilatticeSup α] {β : Type u_1} [Preorder β] {f g : α → β} (hf : Monotone f) (hg : Antitone g) (h : f ≤ g) (m n : α)
Goal: f m ≤ g n
-- SemilatticeSup.ext_sup
theorem SemilatticeSup.ext_sup {α} {A B : SemilatticeSup α}
    (H : ∀ x y : α, (haveI := A; x ≤ y) ↔ x ≤ y)
    (x y : α) :
    (haveI := A; x ⊔ y) = x ⊔ y 
Arguments: {α : Type u_1} {A B : SemilatticeSup α} (H : ∀ (x y : α), x ≤ y ↔ x ≤ y) (x y : α)
Goal: x ⊔ y = x ⊔ y
-- SemilatticeSup.ext
theorem SemilatticeSup.ext {α} {A B : SemilatticeSup α}
    (H : ∀ x y : α, (haveI := A; x ≤ y) ↔ x ≤ y) :
    A = B 
Arguments: {α : Type u_1} {A B : SemilatticeSup α} (H : ∀ (x y : α), x ≤ y ↔ x ≤ y)
Goal: A = B
-- ite_le_sup
theorem ite_le_sup (s s' : α) (P : Prop) [Decidable P] : ite P s s' ≤ s ⊔ s' 
Arguments: {α : Type u} [SemilatticeSup α] (s s' : α) (P : Prop) [Decidable P]
Goal: (if P then s else s') ≤ s ⊔ s'
-- SemilatticeInf.le_inf
class SemilatticeInf (α : Type u) extends Inf α, PartialOrder α where
    protected inf_le_left : ∀ a b : α, a ⊓ b ≤ a
    protected inf_le_right : ∀ a b : α, a ⊓ b ≤ b
    protected le_inf : ∀ a b c : α, a ≤ b → a ≤ c → a ≤ b ⊓ c
Arguments: {α : Type u} [self : SemilatticeInf α] (a b c : α)
Goal: a ≤ b → a ≤ c → a ≤ b ⊓ c
-- SemilatticeInf.inf_le_left
class SemilatticeInf (α : Type u) extends Inf α, PartialOrder α where
    protected inf_le_left : ∀ a b : α, a ⊓ b ≤ a
    protected inf_le_right : ∀ a b : α, a ⊓ b ≤ b
    protected le_inf : ∀ a b c : α, a ≤ b → a ≤ c → a ≤ b ⊓ c
Arguments: {α : Type u} [self : SemilatticeInf α] (a b : α)
Goal: a ⊓ b ≤ a
-- SemilatticeInf.inf_le_right
class SemilatticeInf (α : Type u) extends Inf α, PartialOrder α where
    protected inf_le_left : ∀ a b : α, a ⊓ b ≤ a
    protected inf_le_right : ∀ a b : α, a ⊓ b ≤ b
    protected le_inf : ∀ a b c : α, a ≤ b → a ≤ c → a ≤ b ⊓ c
Arguments: {α : Type u} [self : SemilatticeInf α] (a b : α)
Goal: a ⊓ b ≤ b
-- SemilatticeSup.dual_dual
theorem SemilatticeSup.dual_dual (α : Type*) [H : SemilatticeSup α] :
    OrderDual.instSemilatticeSup αᵒᵈ = H 
Arguments: (α : Type u_1) [H : SemilatticeSup α]
Goal: OrderDual.instSemilatticeSup αᵒᵈ = H
-- inf_le_left
@[simp]
theorem inf_le_left : a ⊓ b ≤ a 
Arguments: {α : Type u} [SemilatticeInf α] {a b : α}
Goal: a ⊓ b ≤ a
-- inf_le_right
@[simp]
theorem inf_le_right : a ⊓ b ≤ b 
Arguments: {α : Type u} [SemilatticeInf α] {a b : α}
Goal: a ⊓ b ≤ b
-- le_inf
theorem le_inf : a ≤ b → a ≤ c → a ≤ b ⊓ c 
Arguments: {α : Type u} [SemilatticeInf α] {a b c : α}
Goal: a ≤ b → a ≤ c → a ≤ b ⊓ c
-- inf_le_of_left_le
theorem inf_le_of_left_le (h : a ≤ c) : a ⊓ b ≤ c 
Arguments: {α : Type u} [SemilatticeInf α] {a b c : α} (h : a ≤ c)
Goal: a ⊓ b ≤ c
-- inf_le_of_right_le
theorem inf_le_of_right_le (h : b ≤ c) : a ⊓ b ≤ c 
Arguments: {α : Type u} [SemilatticeInf α] {a b c : α} (h : b ≤ c)
Goal: a ⊓ b ≤ c
-- inf_lt_of_left_lt
theorem inf_lt_of_left_lt (h : a < c) : a ⊓ b < c 
Arguments: {α : Type u} [SemilatticeInf α] {a b c : α} (h : a < c)
Goal: a ⊓ b < c
-- inf_lt_of_right_lt
theorem inf_lt_of_right_lt (h : b < c) : a ⊓ b < c 
Arguments: {α : Type u} [SemilatticeInf α] {a b c : α} (h : b < c)
Goal: a ⊓ b < c
-- le_inf_iff
@[simp]
theorem le_inf_iff : a ≤ b ⊓ c ↔ a ≤ b ∧ a ≤ c 
Arguments: {α : Type u} [SemilatticeInf α] {a b c : α}
Goal: a ≤ b ⊓ c ↔ a ≤ b ∧ a ≤ c
-- inf_eq_left
@[simp]
theorem inf_eq_left : a ⊓ b = a ↔ a ≤ b 
Arguments: {α : Type u} [SemilatticeInf α] {a b : α}
Goal: a ⊓ b = a ↔ a ≤ b
-- inf_eq_right
@[simp]
theorem inf_eq_right : a ⊓ b = b ↔ b ≤ a 
Arguments: {α : Type u} [SemilatticeInf α] {a b : α}
Goal: a ⊓ b = b ↔ b ≤ a
-- left_eq_inf
@[simp]
theorem left_eq_inf : a = a ⊓ b ↔ a ≤ b 
Arguments: {α : Type u} [SemilatticeInf α] {a b : α}
Goal: a = a ⊓ b ↔ a ≤ b
-- right_eq_inf
@[simp]
theorem right_eq_inf : b = a ⊓ b ↔ b ≤ a 
Arguments: {α : Type u} [SemilatticeInf α] {a b : α}
Goal: b = a ⊓ b ↔ b ≤ a
-- inf_lt_left
@[simp]
theorem inf_lt_left : a ⊓ b < a ↔ ¬a ≤ b 
Arguments: {α : Type u} [SemilatticeInf α] {a b : α}
Goal: a ⊓ b < a ↔ ¬a ≤ b
-- inf_lt_right
@[simp]
theorem inf_lt_right : a ⊓ b < b ↔ ¬b ≤ a 
Arguments: {α : Type u} [SemilatticeInf α] {a b : α}
Goal: a ⊓ b < b ↔ ¬b ≤ a
-- inf_lt_left_or_right
theorem inf_lt_left_or_right (h : a ≠ b) : a ⊓ b < a ∨ a ⊓ b < b 
Arguments: {α : Type u} [SemilatticeInf α] {a b : α} (h : a ≠ b)
Goal: a ⊓ b < a ∨ a ⊓ b < b
-- inf_le_inf
@[gcongr]
theorem inf_le_inf (h₁ : a ≤ b) (h₂ : c ≤ d) : a ⊓ c ≤ b ⊓ d 
Arguments: {α : Type u} [SemilatticeInf α] {a b c d : α} (h₁ : a ≤ b) (h₂ : c ≤ d)
Goal: a ⊓ c ≤ b ⊓ d
-- inf_le_inf_right
@[gcongr]
theorem inf_le_inf_right (a : α) {b c : α} (h : b ≤ c) : b ⊓ a ≤ c ⊓ a 
Arguments: {α : Type u} [SemilatticeInf α] (a : α) {b c : α} (h : b ≤ c)
Goal: b ⊓ a ≤ c ⊓ a
-- inf_le_inf_left
@[gcongr]
theorem inf_le_inf_left (a : α) {b c : α} (h : b ≤ c) : a ⊓ b ≤ a ⊓ c 
Arguments: {α : Type u} [SemilatticeInf α] (a : α) {b c : α} (h : b ≤ c)
Goal: a ⊓ b ≤ a ⊓ c
-- inf_idem
theorem inf_idem (a : α) : a ⊓ a = a 
Arguments: {α : Type u} [SemilatticeInf α] (a : α)
Goal: a ⊓ a = a
-- inf_comm
theorem inf_comm (a b : α) : a ⊓ b = b ⊓ a 
Arguments: {α : Type u} [SemilatticeInf α] (a b : α)
Goal: a ⊓ b = b ⊓ a
-- inf_assoc
theorem inf_assoc (a b c : α) : a ⊓ b ⊓ c = a ⊓ (b ⊓ c) 
Arguments: {α : Type u} [SemilatticeInf α] (a b c : α)
Goal: a ⊓ b ⊓ c = a ⊓ (b ⊓ c)
-- inf_left_right_swap
theorem inf_left_right_swap (a b c : α) : a ⊓ b ⊓ c = c ⊓ b ⊓ a 
Arguments: {α : Type u} [SemilatticeInf α] (a b c : α)
Goal: a ⊓ b ⊓ c = c ⊓ b ⊓ a
-- inf_left_idem
theorem inf_left_idem (a b : α) : a ⊓ (a ⊓ b) = a ⊓ b 
Arguments: {α : Type u} [SemilatticeInf α] (a b : α)
Goal: a ⊓ (a ⊓ b) = a ⊓ b
-- inf_right_idem
theorem inf_right_idem (a b : α) : a ⊓ b ⊓ b = a ⊓ b 
Arguments: {α : Type u} [SemilatticeInf α] (a b : α)
Goal: a ⊓ b ⊓ b = a ⊓ b
-- inf_left_comm
theorem inf_left_comm (a b c : α) : a ⊓ (b ⊓ c) = b ⊓ (a ⊓ c) 
Arguments: {α : Type u} [SemilatticeInf α] (a b c : α)
Goal: a ⊓ (b ⊓ c) = b ⊓ (a ⊓ c)
-- inf_right_comm
theorem inf_right_comm (a b c : α) : a ⊓ b ⊓ c = a ⊓ c ⊓ b 
Arguments: {α : Type u} [SemilatticeInf α] (a b c : α)
Goal: a ⊓ b ⊓ c = a ⊓ c ⊓ b
-- inf_inf_inf_comm
theorem inf_inf_inf_comm (a b c d : α) : a ⊓ b ⊓ (c ⊓ d) = a ⊓ c ⊓ (b ⊓ d) 
Arguments: {α : Type u} [SemilatticeInf α] (a b c d : α)
Goal: a ⊓ b ⊓ (c ⊓ d) = a ⊓ c ⊓ (b ⊓ d)
-- inf_inf_distrib_left
theorem inf_inf_distrib_left (a b c : α) : a ⊓ (b ⊓ c) = a ⊓ b ⊓ (a ⊓ c) 
Arguments: {α : Type u} [SemilatticeInf α] (a b c : α)
Goal: a ⊓ (b ⊓ c) = a ⊓ b ⊓ (a ⊓ c)
-- inf_inf_distrib_right
theorem inf_inf_distrib_right (a b c : α) : a ⊓ b ⊓ c = a ⊓ c ⊓ (b ⊓ c) 
Arguments: {α : Type u} [SemilatticeInf α] (a b c : α)
Goal: a ⊓ b ⊓ c = a ⊓ c ⊓ (b ⊓ c)
-- inf_congr_left
theorem inf_congr_left (hb : a ⊓ c ≤ b) (hc : a ⊓ b ≤ c) : a ⊓ b = a ⊓ c 
Arguments: {α : Type u} [SemilatticeInf α] {a b c : α} (hb : a ⊓ c ≤ b) (hc : a ⊓ b ≤ c)
Goal: a ⊓ b = a ⊓ c
-- inf_congr_right
theorem inf_congr_right (h1 : b ⊓ c ≤ a) (h2 : a ⊓ c ≤ b) : a ⊓ c = b ⊓ c 
Arguments: {α : Type u} [SemilatticeInf α] {a b c : α} (h1 : b ⊓ c ≤ a) (h2 : a ⊓ c ≤ b)
Goal: a ⊓ c = b ⊓ c
-- inf_eq_inf_iff_left
theorem inf_eq_inf_iff_left : a ⊓ b = a ⊓ c ↔ a ⊓ c ≤ b ∧ a ⊓ b ≤ c 
Arguments: {α : Type u} [SemilatticeInf α] {a b c : α}
Goal: a ⊓ b = a ⊓ c ↔ a ⊓ c ≤ b ∧ a ⊓ b ≤ c
-- inf_eq_inf_iff_right
theorem inf_eq_inf_iff_right : a ⊓ c = b ⊓ c ↔ b ⊓ c ≤ a ∧ a ⊓ c ≤ b 
Arguments: {α : Type u} [SemilatticeInf α] {a b c : α}
Goal: a ⊓ c = b ⊓ c ↔ b ⊓ c ≤ a ∧ a ⊓ c ≤ b
-- Ne.inf_lt_or_inf_lt
theorem Ne.inf_lt_or_inf_lt : a ≠ b → a ⊓ b < a ∨ a ⊓ b < b 
Arguments: {α : Type u} [SemilatticeInf α] {a b : α}
Goal: a ≠ b → a ⊓ b < a ∨ a ⊓ b < b
-- SemilatticeInf.ext_inf
theorem SemilatticeInf.ext_inf {α} {A B : SemilatticeInf α}
    (H : ∀ x y : α, (haveI := A; x ≤ y) ↔ x ≤ y)
    (x y : α) :
    (haveI := A; x ⊓ y) = x ⊓ y 
Arguments: {α : Type u_1} {A B : SemilatticeInf α} (H : ∀ (x y : α), x ≤ y ↔ x ≤ y) (x y : α)
Goal: x ⊓ y = x ⊓ y
-- SemilatticeInf.ext
theorem SemilatticeInf.ext {α} {A B : SemilatticeInf α}
    (H : ∀ x y : α, (haveI := A; x ≤ y) ↔ x ≤ y) :
    A = B 
Arguments: {α : Type u_1} {A B : SemilatticeInf α} (H : ∀ (x y : α), x ≤ y ↔ x ≤ y)
Goal: A = B
-- SemilatticeInf.dual_dual
theorem SemilatticeInf.dual_dual (α : Type*) [H : SemilatticeInf α] :
    OrderDual.instSemilatticeInf αᵒᵈ = H 
Arguments: (α : Type u_1) [H : SemilatticeInf α]
Goal: OrderDual.instSemilatticeInf αᵒᵈ = H
-- inf_le_ite
theorem inf_le_ite (s s' : α) (P : Prop) [Decidable P] : s ⊓ s' ≤ ite P s s' 
Arguments: {α : Type u} [SemilatticeInf α] (s s' : α) (P : Prop) [Decidable P]
Goal: s ⊓ s' ≤ if P then s else s'
-- semilatticeSup_mk'_partialOrder_eq_semilatticeInf_mk'_partialOrder
theorem semilatticeSup_mk'_partialOrder_eq_semilatticeInf_mk'_partialOrder
    {α : Type*} [Sup α] [Inf α]
    (sup_comm : ∀ a b : α, a ⊔ b = b ⊔ a) (sup_assoc : ∀ a b c : α, a ⊔ b ⊔ c = a ⊔ (b ⊔ c))
    (sup_idem : ∀ a : α, a ⊔ a = a) (inf_comm : ∀ a b : α, a ⊓ b = b ⊓ a)
    (inf_assoc : ∀ a b c : α, a ⊓ b ⊓ c = a ⊓ (b ⊓ c)) (inf_idem : ∀ a : α, a ⊓ a = a)
    (sup_inf_self : ∀ a b : α, a ⊔ a ⊓ b = a) (inf_sup_self : ∀ a b : α, a ⊓ (a ⊔ b) = a) :
    @SemilatticeSup.toPartialOrder _ (SemilatticeSup.mk' sup_comm sup_assoc sup_idem) =
      @SemilatticeInf.toPartialOrder _ (SemilatticeInf.mk' inf_comm inf_assoc inf_idem) 
Arguments: {α : Type u_1} [Sup α] [Inf α] (sup_comm : ∀ (a b : α), a ⊔ b = b ⊔ a) (sup_assoc : ∀ (a b c : α), a ⊔ b ⊔ c = a ⊔ (b ⊔ c)) (sup_idem : ∀ (a : α), a ⊔ a = a) (inf_comm : ∀ (a b : α), a ⊓ b = b ⊓ a) (inf_assoc : ∀ (a b c : α), a ⊓ b ⊓ c = a ⊓ (b ⊓ c)) (inf_idem : ∀ (a : α), a ⊓ a = a) (sup_inf_self : ∀ (a b : α), a ⊔ a ⊓ b = a) (inf_sup_self : ∀ (a b : α), a ⊓ (a ⊔ b) = a)
Goal: SemilatticeSup.toPartialOrder = SemilatticeInf.toPartialOrder
-- inf_le_sup
theorem inf_le_sup : a ⊓ b ≤ a ⊔ b 
Arguments: {α : Type u} [Lattice α] {a b : α}
Goal: a ⊓ b ≤ a ⊔ b
-- sup_le_inf
theorem sup_le_inf : a ⊔ b ≤ a ⊓ b ↔ a = b 
Arguments: {α : Type u} [Lattice α] {a b : α}
Goal: a ⊔ b ≤ a ⊓ b ↔ a = b
-- inf_eq_sup
@[simp] lemma inf_eq_sup : a ⊓ b = a ⊔ b ↔ a = b 
Arguments: {α : Type u} [Lattice α] {a b : α}
Goal: a ⊓ b = a ⊔ b ↔ a = b
-- sup_eq_inf
@[simp] lemma sup_eq_inf : a ⊔ b = a ⊓ b ↔ a = b 
Arguments: {α : Type u} [Lattice α] {a b : α}
Goal: a ⊔ b = a ⊓ b ↔ a = b
-- inf_lt_sup
@[simp] lemma inf_lt_sup : a ⊓ b < a ⊔ b ↔ a ≠ b 
Arguments: {α : Type u} [Lattice α] {a b : α}
Goal: a ⊓ b < a ⊔ b ↔ a ≠ b
-- inf_eq_and_sup_eq_iff
lemma inf_eq_and_sup_eq_iff : a ⊓ b = c ∧ a ⊔ b = c ↔ a = c ∧ b = c 
Arguments: {α : Type u} [Lattice α] {a b c : α}
Goal: a ⊓ b = c ∧ a ⊔ b = c ↔ a = c ∧ b = c
-- sup_inf_le
theorem sup_inf_le : a ⊔ b ⊓ c ≤ (a ⊔ b) ⊓ (a ⊔ c) 
Arguments: {α : Type u} [Lattice α] {a b c : α}
Goal: a ⊔ b ⊓ c ≤ (a ⊔ b) ⊓ (a ⊔ c)
-- le_inf_sup
theorem le_inf_sup : a ⊓ b ⊔ a ⊓ c ≤ a ⊓ (b ⊔ c) 
Arguments: {α : Type u} [Lattice α] {a b c : α}
Goal: a ⊓ b ⊔ a ⊓ c ≤ a ⊓ (b ⊔ c)
-- inf_sup_self
theorem inf_sup_self : a ⊓ (a ⊔ b) = a 
Arguments: {α : Type u} [Lattice α] {a b : α}
Goal: a ⊓ (a ⊔ b) = a
-- sup_inf_self
theorem sup_inf_self : a ⊔ a ⊓ b = a 
Arguments: {α : Type u} [Lattice α] {a b : α}
Goal: a ⊔ a ⊓ b = a
-- sup_eq_iff_inf_eq
theorem sup_eq_iff_inf_eq : a ⊔ b = b ↔ a ⊓ b = a 
Arguments: {α : Type u} [Lattice α] {a b : α}
Goal: a ⊔ b = b ↔ a ⊓ b = a
-- Lattice.ext
theorem Lattice.ext {α} {A B : Lattice α} (H : ∀ x y : α, (haveI := A; x ≤ y) ↔ x ≤ y) :
    A = B 
Arguments: {α : Type u_1} {A B : Lattice α} (H : ∀ (x y : α), x ≤ y ↔ x ≤ y)
Goal: A = B
-- DistribLattice.le_sup_inf
class DistribLattice (α) extends Lattice α where
    protected le_sup_inf : ∀ x y z : α, (x ⊔ y) ⊓ (x ⊔ z) ≤ x ⊔ y ⊓ z
Arguments: {α : Type u_1} [self : DistribLattice α] (x y z : α)
Goal: (x ⊔ y) ⊓ (x ⊔ z) ≤ x ⊔ y ⊓ z
-- le_sup_inf
theorem le_sup_inf : ∀ {x y z : α}, (x ⊔ y) ⊓ (x ⊔ z) ≤ x ⊔ y ⊓ z 
Arguments: {α : Type u} [DistribLattice α] {x y z : α}
Goal: (x ⊔ y) ⊓ (x ⊔ z) ≤ x ⊔ y ⊓ z
-- sup_inf_left
theorem sup_inf_left (a b c : α) : a ⊔ b ⊓ c = (a ⊔ b) ⊓ (a ⊔ c) 
Arguments: {α : Type u} [DistribLattice α] (a b c : α)
Goal: a ⊔ b ⊓ c = (a ⊔ b) ⊓ (a ⊔ c)
-- sup_inf_right
theorem sup_inf_right (a b c : α) : a ⊓ b ⊔ c = (a ⊔ c) ⊓ (b ⊔ c) 
Arguments: {α : Type u} [DistribLattice α] (a b c : α)
Goal: a ⊓ b ⊔ c = (a ⊔ c) ⊓ (b ⊔ c)
-- inf_sup_left
theorem inf_sup_left (a b c : α) : a ⊓ (b ⊔ c) = a ⊓ b ⊔ a ⊓ c 
Arguments: {α : Type u} [DistribLattice α] (a b c : α)
Goal: a ⊓ (b ⊔ c) = a ⊓ b ⊔ a ⊓ c
-- inf_sup_right
theorem inf_sup_right (a b c : α) : (a ⊔ b) ⊓ c = a ⊓ c ⊔ b ⊓ c 
Arguments: {α : Type u} [DistribLattice α] (a b c : α)
Goal: (a ⊔ b) ⊓ c = a ⊓ c ⊔ b ⊓ c
-- le_of_inf_le_sup_le
theorem le_of_inf_le_sup_le (h₁ : x ⊓ z ≤ y ⊓ z) (h₂ : x ⊔ z ≤ y ⊔ z) : x ≤ y 
Arguments: {α : Type u} [DistribLattice α] {x y z : α} (h₁ : x ⊓ z ≤ y ⊓ z) (h₂ : x ⊔ z ≤ y ⊔ z)
Goal: x ≤ y
-- eq_of_inf_eq_sup_eq
theorem eq_of_inf_eq_sup_eq {a b c : α} (h₁ : b ⊓ a = c ⊓ a) (h₂ : b ⊔ a = c ⊔ a) : b = c 
Arguments: {α : Type u} [DistribLattice α] {a b c : α} (h₁ : b ⊓ a = c ⊓ a) (h₂ : b ⊔ a = c ⊔ a)
Goal: b = c
-- sup_eq_max
theorem sup_eq_max : a ⊔ b = max a b 
Arguments: {α : Type u} [LinearOrder α] {a b : α}
Goal: a ⊔ b = max a b
-- inf_eq_min
theorem inf_eq_min : a ⊓ b = min a b 
Arguments: {α : Type u} [LinearOrder α] {a b : α}
Goal: a ⊓ b = min a b
-- sup_ind
theorem sup_ind (a b : α) {p : α → Prop} (ha : p a) (hb : p b) : p (a ⊔ b) 
Arguments: {α : Type u} [LinearOrder α] (a b : α) {p : α → Prop} (ha : p a) (hb : p b)
Goal: p (a ⊔ b)
-- le_sup_iff
@[simp]
theorem le_sup_iff : a ≤ b ⊔ c ↔ a ≤ b ∨ a ≤ c 
Arguments: {α : Type u} [LinearOrder α] {a b c : α}
Goal: a ≤ b ⊔ c ↔ a ≤ b ∨ a ≤ c
-- lt_sup_iff
@[simp]
theorem lt_sup_iff : a < b ⊔ c ↔ a < b ∨ a < c 
Arguments: {α : Type u} [LinearOrder α] {a b c : α}
Goal: a < b ⊔ c ↔ a < b ∨ a < c
-- sup_lt_iff
@[simp]
theorem sup_lt_iff : b ⊔ c < a ↔ b < a ∧ c < a 
Arguments: {α : Type u} [LinearOrder α] {a b c : α}
Goal: b ⊔ c < a ↔ b < a ∧ c < a