ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- TwoPointing.nonempty_two_pointing_iff
@[simp]
theorem nonempty_two_pointing_iff : Nonempty (TwoPointing α) ↔ Nontrivial α 
Arguments: {α : Type u_1}
Goal: Nonempty (TwoPointing α) ↔ Nontrivial α
-- TwoPointing.pi_fst
@[simp]
theorem pi_fst : (q.pi α).fst = const α q.fst 
Arguments: (α : Type u_1) {β : Type u_2} (q : TwoPointing β) [Nonempty α]
Goal: (TwoPointing.pi α q).fst = Function.const α q.fst
-- TwoPointing.pi_snd
@[simp]
theorem pi_snd : (q.pi α).snd = const α q.snd 
Arguments: (α : Type u_1) {β : Type u_2} (q : TwoPointing β) [Nonempty α]
Goal: (TwoPointing.pi α q).snd = Function.const α q.snd
-- TwoPointing.prod_fst
@[simp]
theorem prod_fst : (p.prod q).fst = (p.fst, q.fst) 
Arguments: {α : Type u_1} {β : Type u_2} (p : TwoPointing α) (q : TwoPointing β)
Goal: (p.prod q).fst = (p.fst, q.fst)
-- TwoPointing.prod_snd
@[simp]
theorem prod_snd : (p.prod q).snd = (p.snd, q.snd) 
Arguments: {α : Type u_1} {β : Type u_2} (p : TwoPointing α) (q : TwoPointing β)
Goal: (p.prod q).snd = (p.snd, q.snd)
-- TwoPointing.sum_fst
@[simp]
theorem sum_fst : (p.sum q).fst = Sum.inl p.fst 
Arguments: {α : Type u_1} {β : Type u_2} (p : TwoPointing α) (q : TwoPointing β)
Goal: (p.sum q).fst = Sum.inl p.fst
-- TwoPointing.sum_snd
@[simp]
theorem sum_snd : (p.sum q).snd = Sum.inr q.snd 
Arguments: {α : Type u_1} {β : Type u_2} (p : TwoPointing α) (q : TwoPointing β)
Goal: (p.sum q).snd = Sum.inr q.snd
-- TwoPointing.bool_fst
@[simp]
theorem bool_fst : TwoPointing.bool.fst = false 
Goal: TwoPointing.bool.fst = false
-- TwoPointing.bool_snd
@[simp]
theorem bool_snd : TwoPointing.bool.snd = true 
Goal: TwoPointing.bool.snd = true
-- TwoPointing.prop_fst
@[simp]
theorem prop_fst : TwoPointing.prop.fst = False 
Goal: TwoPointing.prop.fst = False
-- TwoPointing.prop_snd
@[simp]
theorem prop_snd : TwoPointing.prop.snd = True 
Goal: TwoPointing.prop.snd = True
-- Set.top_eq_univ
@[simp]
theorem top_eq_univ : (⊤ : Set α) = univ 
Arguments: {α : Type u}
Goal: ⊤ = Set.univ
-- Set.bot_eq_empty
@[simp]
theorem bot_eq_empty : (⊥ : Set α) = ∅ 
Arguments: {α : Type u}
Goal: ⊥ = ∅
-- Set.sup_eq_union
@[simp]
theorem sup_eq_union : ((· ⊔ ·) : Set α → Set α → Set α) = (· ∪ ·) 
Arguments: {α : Type u}
Goal: (fun x x_1 => x ⊔ x_1) = fun x x_1 => x ∪ x_1
-- Set.inf_eq_inter
@[simp]
theorem inf_eq_inter : ((· ⊓ ·) : Set α → Set α → Set α) = (· ∩ ·) 
Arguments: {α : Type u}
Goal: (fun x x_1 => x ⊓ x_1) = fun x x_1 => x ∩ x_1
-- Set.le_eq_subset
@[simp]
theorem le_eq_subset : ((· ≤ ·) : Set α → Set α → Prop) = (· ⊆ ·) 
Arguments: {α : Type u}
Goal: (fun x x_1 => x ≤ x_1) = fun x x_1 => x ⊆ x_1
-- Set.lt_eq_ssubset
@[simp]
theorem lt_eq_ssubset : ((· < ·) : Set α → Set α → Prop) = (· ⊂ ·) 
Arguments: {α : Type u}
Goal: (fun x x_1 => x < x_1) = fun x x_1 => x ⊂ x_1
-- Set.le_iff_subset
theorem le_iff_subset : s ≤ t ↔ s ⊆ t 
Arguments: {α : Type u} {s t : Set α}
Goal: s ≤ t ↔ s ⊆ t
-- Set.lt_iff_ssubset
theorem lt_iff_ssubset : s < t ↔ s ⊂ t 
Arguments: {α : Type u} {s t : Set α}
Goal: s < t ↔ s ⊂ t
-- Set.coe_eq_subtype
theorem Set.coe_eq_subtype (s : Set α) : ↥s = { x // x ∈ s } 
Arguments: {α : Type u} (s : Set α)
Goal: ↑s = { x // x ∈ s }
-- Set.coe_setOf
@[simp]
theorem Set.coe_setOf (p : α → Prop) : ↥{ x | p x } = { x // p x } 
Arguments: {α : Type u} (p : α → Prop)
Goal: ↑{x | p x} = { x // p x }
-- SetCoe.forall
theorem SetCoe.forall {s : Set α} {p : s → Prop} : (∀ x : s, p x) ↔ ∀ (x) (h : x ∈ s), p ⟨x, h⟩ 
Arguments: {α : Type u} {s : Set α} {p : ↑s → Prop}
Goal: (∀ (x : ↑s), p x) ↔ ∀ (x : α) (h : x ∈ s), p ⟨x, h⟩
-- SetCoe.exists
theorem SetCoe.exists {s : Set α} {p : s → Prop} :
    (∃ x : s, p x) ↔ ∃ (x : _) (h : x ∈ s), p ⟨x, h⟩ 
Arguments: {α : Type u} {s : Set α} {p : ↑s → Prop}
Goal: (∃ x, p x) ↔ ∃ x, ∃ (h : x ∈ s), p ⟨x, h⟩
-- SetCoe.exists'
theorem SetCoe.exists' {s : Set α} {p : ∀ x, x ∈ s → Prop} :
    (∃ (x : _) (h : x ∈ s), p x h) ↔ ∃ x : s, p x.1 x.2 
Arguments: {α : Type u} {s : Set α} {p : (x : α) → x ∈ s → Prop}
Goal: (∃ x, ∃ (h : x ∈ s), p x h) ↔ ∃ x, p ↑x ⋯
-- SetCoe.forall'
theorem SetCoe.forall' {s : Set α} {p : ∀ x, x ∈ s → Prop} :
    (∀ (x) (h : x ∈ s), p x h) ↔ ∀ x : s, p x.1 x.2 
Arguments: {α : Type u} {s : Set α} {p : (x : α) → x ∈ s → Prop}
Goal: (∀ (x : α) (h : x ∈ s), p x h) ↔ ∀ (x : ↑s), p ↑x ⋯
-- set_coe_cast
@[simp]
theorem set_coe_cast :
    ∀ {s t : Set α} (H' : s = t) (H : ↥s = ↥t) (x : s), cast H x = ⟨x.1, H' ▸ x.2⟩
  
Arguments: {α : Type u} {s t : Set α} (H' : s = t) (H : ↑s = ↑t) (x : ↑s)
Goal: cast H x = ⟨↑x, ⋯⟩
-- SetCoe.ext
theorem SetCoe.ext {s : Set α} {a b : s} : (a : α) = b → a = b 
Arguments: {α : Type u} {s : Set α} {a b : ↑s}
Goal: ↑a = ↑b → a = b
-- SetCoe.ext_iff
theorem SetCoe.ext_iff {s : Set α} {a b : s} : (↑a : α) = ↑b ↔ a = b 
Arguments: {α : Type u} {s : Set α} {a b : ↑s}
Goal: ↑a = ↑b ↔ a = b
-- Subtype.mem
theorem Subtype.mem {α : Type*} {s : Set α} (p : s) : (p : α) ∈ s 
Arguments: {α : Type u_1} {s : Set α} (p : ↑s)
Goal: ↑p ∈ s
-- Eq.subset
theorem Eq.subset {α} {s t : Set α} : s = t → s ⊆ t 
Arguments: {α : Type u_1} {s t : Set α}
Goal: s = t → s ⊆ t
-- Set.ext_iff
protected theorem ext_iff {s t : Set α} : s = t ↔ ∀ x, x ∈ s ↔ x ∈ t 
Arguments: {α : Type u} {s t : Set α}
Goal: s = t ↔ ∀ (x : α), x ∈ s ↔ x ∈ t
-- Set.mem_of_mem_of_subset
@[trans]
theorem mem_of_mem_of_subset {x : α} {s t : Set α} (hx : x ∈ s) (h : s ⊆ t) : x ∈ t 
Arguments: {α : Type u} {x : α} {s t : Set α} (hx : x ∈ s) (h : s ⊆ t)
Goal: x ∈ t
-- Set.forall_in_swap
theorem forall_in_swap {p : α → β → Prop} : (∀ a ∈ s, ∀ (b), p a b) ↔ ∀ (b), ∀ a ∈ s, p a b 
Arguments: {α : Type u} {β : Type v} {s : Set α} {p : α → β → Prop}
Goal: (∀ a ∈ s, ∀ (b : β), p a b) ↔ ∀ (b : β), ∀ a ∈ s, p a b
-- Set.mem_setOf
theorem mem_setOf {a : α} {p : α → Prop} : a ∈ { x | p x } ↔ p a 
Arguments: {α : Type u} {a : α} {p : α → Prop}
Goal: a ∈ {x | p x} ↔ p a
-- Membership.mem.out
theorem _root_.Membership.mem.out {p : α → Prop} {a : α} (h : a ∈ { x | p x }) : p a 
Arguments: {α : Type u} {p : α → Prop} {a : α} (h : a ∈ {x | p x})
Goal: p a
-- Set.nmem_setOf_iff
theorem nmem_setOf_iff {a : α} {p : α → Prop} : a ∉ { x | p x } ↔ ¬p a 
Arguments: {α : Type u} {a : α} {p : α → Prop}
Goal: a ∉ {x | p x} ↔ ¬p a
-- Set.setOf_mem_eq
@[simp]
theorem setOf_mem_eq {s : Set α} : { x | x ∈ s } = s 
Arguments: {α : Type u} {s : Set α}
Goal: {x | x ∈ s} = s
-- Set.setOf_set
theorem setOf_set {s : Set α} : setOf s = s 
Arguments: {α : Type u} {s : Set α}
Goal: setOf s = s
-- Set.setOf_app_iff
theorem setOf_app_iff {p : α → Prop} {x : α} : { x | p x } x ↔ p x 
Arguments: {α : Type u} {p : α → Prop} {x : α}
Goal: {x | p x} x ↔ p x
-- Set.mem_def
theorem mem_def {a : α} {s : Set α} : a ∈ s ↔ s a 
Arguments: {α : Type u} {a : α} {s : Set α}
Goal: a ∈ s ↔ s a
-- Set.setOf_bijective
theorem setOf_bijective : Bijective (setOf : (α → Prop) → Set α) 
Arguments: {α : Type u}
Goal: Function.Bijective setOf
-- Set.subset_setOf
theorem subset_setOf {p : α → Prop} {s : Set α} : s ⊆ setOf p ↔ ∀ x, x ∈ s → p x 
Arguments: {α : Type u} {p : α → Prop} {s : Set α}
Goal: s ⊆ setOf p ↔ ∀ x ∈ s, p x
-- Set.setOf_subset
theorem setOf_subset {p : α → Prop} {s : Set α} : setOf p ⊆ s ↔ ∀ x, p x → x ∈ s 
Arguments: {α : Type u} {p : α → Prop} {s : Set α}
Goal: setOf p ⊆ s ↔ ∀ (x : α), p x → x ∈ s
-- Set.setOf_subset_setOf
@[simp]
theorem setOf_subset_setOf {p q : α → Prop} : { a | p a } ⊆ { a | q a } ↔ ∀ a, p a → q a 
Arguments: {α : Type u} {p q : α → Prop}
Goal: {a | p a} ⊆ {a | q a} ↔ ∀ (a : α), p a → q a
-- Set.setOf_and
theorem setOf_and {p q : α → Prop} : { a | p a ∧ q a } = { a | p a } ∩ { a | q a } 
Arguments: {α : Type u} {p q : α → Prop}
Goal: {a | p a ∧ q a} = {a | p a} ∩ {a | q a}
-- Set.setOf_or
theorem setOf_or {p q : α → Prop} : { a | p a ∨ q a } = { a | p a } ∪ { a | q a } 
Arguments: {α : Type u} {p q : α → Prop}
Goal: {a | p a ∨ q a} = {a | p a} ∪ {a | q a}
-- Set.subset_def
theorem subset_def : (s ⊆ t) = ∀ x, x ∈ s → x ∈ t 
Arguments: {α : Type u} {s t : Set α}
Goal: (s ⊆ t) = ∀ x ∈ s, x ∈ t
-- Set.ssubset_def
theorem ssubset_def : (s ⊂ t) = (s ⊆ t ∧ ¬t ⊆ s) 
Arguments: {α : Type u} {s t : Set α}
Goal: (s ⊂ t) = (s ⊆ t ∧ ¬t ⊆ s)
-- Set.Subset.refl
@[refl]
theorem Subset.refl (a : Set α) : a ⊆ a 
Arguments: {α : Type u} (a : Set α)
Goal: a ⊆ a
-- Set.Subset.rfl
theorem Subset.rfl {s : Set α} : s ⊆ s 
Arguments: {α : Type u} {s : Set α}
Goal: s ⊆ s
-- Set.Subset.trans
@[trans]
theorem Subset.trans {a b c : Set α} (ab : a ⊆ b) (bc : b ⊆ c) : a ⊆ c 
Arguments: {α : Type u} {a b c : Set α} (ab : a ⊆ b) (bc : b ⊆ c)
Goal: a ⊆ c
-- Set.mem_of_eq_of_mem
@[trans]
theorem mem_of_eq_of_mem {x y : α} {s : Set α} (hx : x = y) (h : y ∈ s) : x ∈ s 
Arguments: {α : Type u} {x y : α} {s : Set α} (hx : x = y) (h : y ∈ s)
Goal: x ∈ s
-- Set.Subset.antisymm
theorem Subset.antisymm {a b : Set α} (h₁ : a ⊆ b) (h₂ : b ⊆ a) : a = b 
Arguments: {α : Type u} {a b : Set α} (h₁ : a ⊆ b) (h₂ : b ⊆ a)
Goal: a = b
-- Set.Subset.antisymm_iff
theorem Subset.antisymm_iff {a b : Set α} : a = b ↔ a ⊆ b ∧ b ⊆ a 
Arguments: {α : Type u} {a b : Set α}
Goal: a = b ↔ a ⊆ b ∧ b ⊆ a
-- Set.eq_of_subset_of_subset
theorem eq_of_subset_of_subset {a b : Set α} : a ⊆ b → b ⊆ a → a = b 
Arguments: {α : Type u} {a b : Set α}
Goal: a ⊆ b → b ⊆ a → a = b
-- Set.mem_of_subset_of_mem
theorem mem_of_subset_of_mem {s₁ s₂ : Set α} {a : α} (h : s₁ ⊆ s₂) : a ∈ s₁ → a ∈ s₂ 
Arguments: {α : Type u} {s₁ s₂ : Set α} {a : α} (h : s₁ ⊆ s₂)
Goal: a ∈ s₁ → a ∈ s₂
-- Set.not_mem_subset
theorem not_mem_subset (h : s ⊆ t) : a ∉ t → a ∉ s 
Arguments: {α : Type u} {a : α} {s t : Set α} (h : s ⊆ t)
Goal: a ∉ t → a ∉ s
-- Set.not_subset
theorem not_subset : ¬s ⊆ t ↔ ∃ a ∈ s, a ∉ t 
Arguments: {α : Type u} {s t : Set α}
Goal: ¬s ⊆ t ↔ ∃ a ∈ s, a ∉ t
-- Set.eq_of_forall_subset_iff
lemma eq_of_forall_subset_iff (h : ∀ u, s ⊆ u ↔ t ⊆ u) : s = t 
Arguments: {α : Type u} {s t : Set α} (h : ∀ (u : Set α), s ⊆ u ↔ t ⊆ u)
Goal: s = t
-- Set.eq_or_ssubset_of_subset
protected theorem eq_or_ssubset_of_subset (h : s ⊆ t) : s = t ∨ s ⊂ t 
Arguments: {α : Type u} {s t : Set α} (h : s ⊆ t)
Goal: s = t ∨ s ⊂ t
-- Set.exists_of_ssubset
theorem exists_of_ssubset {s t : Set α} (h : s ⊂ t) : ∃ x ∈ t, x ∉ s 
Arguments: {α : Type u} {s t : Set α} (h : s ⊂ t)
Goal: ∃ x ∈ t, x ∉ s
-- Set.ssubset_iff_subset_ne
protected theorem ssubset_iff_subset_ne {s t : Set α} : s ⊂ t ↔ s ⊆ t ∧ s ≠ t 
Arguments: {α : Type u} {s t : Set α}
Goal: s ⊂ t ↔ s ⊆ t ∧ s ≠ t
-- Set.ssubset_iff_of_subset
theorem ssubset_iff_of_subset {s t : Set α} (h : s ⊆ t) : s ⊂ t ↔ ∃ x ∈ t, x ∉ s 
Arguments: {α : Type u} {s t : Set α} (h : s ⊆ t)
Goal: s ⊂ t ↔ ∃ x ∈ t, x ∉ s
-- Set.ssubset_of_ssubset_of_subset
protected theorem ssubset_of_ssubset_of_subset {s₁ s₂ s₃ : Set α} (hs₁s₂ : s₁ ⊂ s₂)
    (hs₂s₃ : s₂ ⊆ s₃) : s₁ ⊂ s₃ 
Arguments: {α : Type u} {s₁ s₂ s₃ : Set α} (hs₁s₂ : s₁ ⊂ s₂) (hs₂s₃ : s₂ ⊆ s₃)
Goal: s₁ ⊂ s₃
-- Set.ssubset_of_subset_of_ssubset
protected theorem ssubset_of_subset_of_ssubset {s₁ s₂ s₃ : Set α} (hs₁s₂ : s₁ ⊆ s₂)
    (hs₂s₃ : s₂ ⊂ s₃) : s₁ ⊂ s₃ 
Arguments: {α : Type u} {s₁ s₂ s₃ : Set α} (hs₁s₂ : s₁ ⊆ s₂) (hs₂s₃ : s₂ ⊂ s₃)
Goal: s₁ ⊂ s₃
-- Set.not_mem_empty
theorem not_mem_empty (x : α) : ¬x ∈ (∅ : Set α) 
Arguments: {α : Type u} (x : α)
Goal: x ∉ ∅
-- Set.not_not_mem
theorem not_not_mem : ¬a ∉ s ↔ a ∈ s 
Arguments: {α : Type u} {a : α} {s : Set α}
Goal: ¬a ∉ s ↔ a ∈ s
-- Set.nonempty_coe_sort
theorem nonempty_coe_sort {s : Set α} : Nonempty (↥s) ↔ s.Nonempty 
Arguments: {α : Type u} {s : Set α}
Goal: Nonempty ↑s ↔ s.Nonempty
-- Set.nonempty_def
theorem nonempty_def : s.Nonempty ↔ ∃ x, x ∈ s 
Arguments: {α : Type u} {s : Set α}
Goal: s.Nonempty ↔ ∃ x, x ∈ s
-- Set.nonempty_of_mem
theorem nonempty_of_mem {x} (h : x ∈ s) : s.Nonempty 
Arguments: {α : Type u} {s : Set α} {x : α} (h : x ∈ s)
Goal: s.Nonempty
-- Set.Nonempty.not_subset_empty
theorem Nonempty.not_subset_empty : s.Nonempty → ¬s ⊆ ∅
  
Arguments: {α : Type u} {s : Set α}
Goal: s.Nonempty → ¬s ⊆ ∅
-- Set.Nonempty.some_mem
protected theorem Nonempty.some_mem (h : s.Nonempty) : h.some ∈ s 
Arguments: {α : Type u} {s : Set α} (h : s.Nonempty)
Goal: h.some ∈ s
-- Set.Nonempty.mono
theorem Nonempty.mono (ht : s ⊆ t) (hs : s.Nonempty) : t.Nonempty 
Arguments: {α : Type u} {s t : Set α} (ht : s ⊆ t) (hs : s.Nonempty)
Goal: t.Nonempty
-- Set.nonempty_of_not_subset
theorem nonempty_of_not_subset (h : ¬s ⊆ t) : (s \ t).Nonempty 
Arguments: {α : Type u} {s t : Set α} (h : ¬s ⊆ t)
Goal: (s \ t).Nonempty
-- Set.nonempty_of_ssubset
theorem nonempty_of_ssubset (ht : s ⊂ t) : (t \ s).Nonempty 
Arguments: {α : Type u} {s t : Set α} (ht : s ⊂ t)
Goal: (t \ s).Nonempty
-- Set.Nonempty.of_diff
theorem Nonempty.of_diff (h : (s \ t).Nonempty) : s.Nonempty 
Arguments: {α : Type u} {s t : Set α} (h : (s \ t).Nonempty)
Goal: s.Nonempty
-- Set.nonempty_of_ssubset'
theorem nonempty_of_ssubset' (ht : s ⊂ t) : t.Nonempty 
Arguments: {α : Type u} {s t : Set α} (ht : s ⊂ t)
Goal: t.Nonempty
-- Set.Nonempty.inl
theorem Nonempty.inl (hs : s.Nonempty) : (s ∪ t).Nonempty 
Arguments: {α : Type u} {s t : Set α} (hs : s.Nonempty)
Goal: (s ∪ t).Nonempty
-- Set.Nonempty.inr
theorem Nonempty.inr (ht : t.Nonempty) : (s ∪ t).Nonempty 
Arguments: {α : Type u} {s t : Set α} (ht : t.Nonempty)
Goal: (s ∪ t).Nonempty
-- Set.union_nonempty
@[simp]
theorem union_nonempty : (s ∪ t).Nonempty ↔ s.Nonempty ∨ t.Nonempty 
Arguments: {α : Type u} {s t : Set α}
Goal: (s ∪ t).Nonempty ↔ s.Nonempty ∨ t.Nonempty
-- Set.Nonempty.left
theorem Nonempty.left (h : (s ∩ t).Nonempty) : s.Nonempty 
Arguments: {α : Type u} {s t : Set α} (h : (s ∩ t).Nonempty)
Goal: s.Nonempty
-- Set.Nonempty.right
theorem Nonempty.right (h : (s ∩ t).Nonempty) : t.Nonempty 
Arguments: {α : Type u} {s t : Set α} (h : (s ∩ t).Nonempty)
Goal: t.Nonempty
-- Set.inter_nonempty
theorem inter_nonempty : (s ∩ t).Nonempty ↔ ∃ x, x ∈ s ∧ x ∈ t 
Arguments: {α : Type u} {s t : Set α}
Goal: (s ∩ t).Nonempty ↔ ∃ x ∈ s, x ∈ t
-- Set.inter_nonempty_iff_exists_left
theorem inter_nonempty_iff_exists_left : (s ∩ t).Nonempty ↔ ∃ x ∈ s, x ∈ t 
Arguments: {α : Type u} {s t : Set α}
Goal: (s ∩ t).Nonempty ↔ ∃ x ∈ s, x ∈ t
-- Set.inter_nonempty_iff_exists_right
theorem inter_nonempty_iff_exists_right : (s ∩ t).Nonempty ↔ ∃ x ∈ t, x ∈ s 
Arguments: {α : Type u} {s t : Set α}
Goal: (s ∩ t).Nonempty ↔ ∃ x ∈ t, x ∈ s
-- Set.nonempty_iff_univ_nonempty
theorem nonempty_iff_univ_nonempty : Nonempty α ↔ (univ : Set α).Nonempty 
Arguments: {α : Type u}
Goal: Nonempty α ↔ Set.univ.Nonempty
-- Set.univ_nonempty
@[simp]
theorem univ_nonempty : ∀ [Nonempty α], (univ : Set α).Nonempty
  
Arguments: {α : Type u} [Nonempty α]
Goal: Set.univ.Nonempty
-- Set.Nonempty.to_subtype
theorem Nonempty.to_subtype : s.Nonempty → Nonempty (↥s) 
Arguments: {α : Type u} {s : Set α}
Goal: s.Nonempty → Nonempty ↑s
-- Set.Nonempty.to_type
theorem Nonempty.to_type : s.Nonempty → Nonempty α 
Arguments: {α : Type u} {s : Set α}
Goal: s.Nonempty → Nonempty α
-- Set.nonempty_of_nonempty_subtype
theorem nonempty_of_nonempty_subtype [Nonempty (↥s)] : s.Nonempty 
Arguments: {α : Type u} {s : Set α} [Nonempty ↑s]
Goal: s.Nonempty
-- Set.empty_def
theorem empty_def : (∅ : Set α) = { _x : α | False } 
Arguments: {α : Type u}
Goal: ∅ = {_x | False}
-- Set.mem_empty_iff_false
@[simp]
theorem mem_empty_iff_false (x : α) : x ∈ (∅ : Set α) ↔ False 
Arguments: {α : Type u} (x : α)
Goal: x ∈ ∅ ↔ False
-- Set.setOf_false
@[simp]
theorem setOf_false : { _a : α | False } = ∅ 
Arguments: {α : Type u}
Goal: {_a | False} = ∅
-- Set.setOf_bot
@[simp] theorem setOf_bot : { _x : α | ⊥ } = ∅ 
Arguments: {α : Type u}
Goal: {_x | ⊥} = ∅
-- Set.empty_subset
@[simp]
theorem empty_subset (s : Set α) : ∅ ⊆ s 
Arguments: {α : Type u} (s : Set α)
Goal: ∅ ⊆ s
-- Set.subset_empty_iff
@[simp]
theorem subset_empty_iff {s : Set α} : s ⊆ ∅ ↔ s = ∅ 
Arguments: {α : Type u} {s : Set α}
Goal: s ⊆ ∅ ↔ s = ∅
-- Set.eq_empty_iff_forall_not_mem
theorem eq_empty_iff_forall_not_mem {s : Set α} : s = ∅ ↔ ∀ x, x ∉ s 
Arguments: {α : Type u} {s : Set α}
Goal: s = ∅ ↔ ∀ (x : α), x ∉ s
-- Set.eq_empty_of_forall_not_mem
theorem eq_empty_of_forall_not_mem (h : ∀ x, x ∉ s) : s = ∅ 
Arguments: {α : Type u} {s : Set α} (h : ∀ (x : α), x ∉ s)
Goal: s = ∅
-- Set.eq_empty_of_subset_empty
theorem eq_empty_of_subset_empty {s : Set α} : s ⊆ ∅ → s = ∅ 
Arguments: {α : Type u} {s : Set α}
Goal: s ⊆ ∅ → s = ∅
-- Set.eq_empty_of_isEmpty
theorem eq_empty_of_isEmpty [IsEmpty α] (s : Set α) : s = ∅ 
Arguments: {α : Type u} [IsEmpty α] (s : Set α)
Goal: s = ∅
-- Set.not_nonempty_iff_eq_empty
theorem not_nonempty_iff_eq_empty {s : Set α} : ¬s.Nonempty ↔ s = ∅ 
Arguments: {α : Type u} {s : Set α}
Goal: ¬s.Nonempty ↔ s = ∅
-- Set.nonempty_iff_ne_empty
theorem nonempty_iff_ne_empty : s.Nonempty ↔ s ≠ ∅ 
Arguments: {α : Type u} {s : Set α}
Goal: s.Nonempty ↔ s ≠ ∅
-- Set.not_nonempty_iff_eq_empty'
theorem not_nonempty_iff_eq_empty' : ¬Nonempty s ↔ s = ∅ 
Arguments: {α : Type u} {s : Set α}
Goal: ¬Nonempty ↑s ↔ s = ∅
-- Set.nonempty_iff_ne_empty'
theorem nonempty_iff_ne_empty' : Nonempty s ↔ s ≠ ∅ 
Arguments: {α : Type u} {s : Set α}
Goal: Nonempty ↑s ↔ s ≠ ∅
-- Set.not_nonempty_empty
@[simp]
theorem not_nonempty_empty : ¬(∅ : Set α).Nonempty 
Arguments: {α : Type u}
Goal: ¬∅.Nonempty
-- Set.isEmpty_coe_sort
theorem isEmpty_coe_sort {s : Set α} : IsEmpty (↥s) ↔ s = ∅ 
Arguments: {α : Type u} {s : Set α}
Goal: IsEmpty ↑s ↔ s = ∅
-- Set.eq_empty_or_nonempty
theorem eq_empty_or_nonempty (s : Set α) : s = ∅ ∨ s.Nonempty 
Arguments: {α : Type u} (s : Set α)
Goal: s = ∅ ∨ s.Nonempty
-- Set.subset_eq_empty
theorem subset_eq_empty {s t : Set α} (h : t ⊆ s) (e : s = ∅) : t = ∅ 
Arguments: {α : Type u} {s t : Set α} (h : t ⊆ s) (e : s = ∅)
Goal: t = ∅
-- Set.forall_mem_empty
theorem forall_mem_empty {p : α → Prop} : (∀ x ∈ (∅ : Set α), p x) ↔ True 
Arguments: {α : Type u} {p : α → Prop}
Goal: (∀ x ∈ ∅, p x) ↔ True
-- Set.empty_ssubset
@[simp]
theorem empty_ssubset : ∅ ⊂ s ↔ s.Nonempty 
Arguments: {α : Type u} {s : Set α}
Goal: ∅ ⊂ s ↔ s.Nonempty
-- Set.setOf_true
@[simp]
theorem setOf_true : { _x : α | True } = univ 
Arguments: {α : Type u}
Goal: {_x | True} = Set.univ
-- Set.setOf_top
@[simp] theorem setOf_top : { _x : α | ⊤ } = univ 
Arguments: {α : Type u}
Goal: {_x | ⊤} = Set.univ
-- Set.univ_eq_empty_iff
@[simp]
theorem univ_eq_empty_iff : (univ : Set α) = ∅ ↔ IsEmpty α 
Arguments: {α : Type u}
Goal: Set.univ = ∅ ↔ IsEmpty α
-- Set.empty_ne_univ
theorem empty_ne_univ [Nonempty α] : (∅ : Set α) ≠ univ 
Arguments: {α : Type u} [Nonempty α]
Goal: ∅ ≠ Set.univ
-- Set.subset_univ
@[simp]
theorem subset_univ (s : Set α) : s ⊆ univ 
Arguments: {α : Type u} (s : Set α)
Goal: s ⊆ Set.univ
-- Set.univ_subset_iff
@[simp]
theorem univ_subset_iff {s : Set α} : univ ⊆ s ↔ s = univ 
Arguments: {α : Type u} {s : Set α}
Goal: Set.univ ⊆ s ↔ s = Set.univ
-- Set.eq_univ_iff_forall
theorem eq_univ_iff_forall {s : Set α} : s = univ ↔ ∀ x, x ∈ s 
Arguments: {α : Type u} {s : Set α}
Goal: s = Set.univ ↔ ∀ (x : α), x ∈ s
-- Set.eq_univ_of_forall
theorem eq_univ_of_forall {s : Set α} : (∀ x, x ∈ s) → s = univ 
Arguments: {α : Type u} {s : Set α}
Goal: (∀ (x : α), x ∈ s) → s = Set.univ
-- Set.Nonempty.eq_univ
theorem Nonempty.eq_univ [Subsingleton α] : s.Nonempty → s = univ 
Arguments: {α : Type u} {s : Set α} [Subsingleton α]
Goal: s.Nonempty → s = Set.univ
-- Set.eq_univ_of_subset
theorem eq_univ_of_subset {s t : Set α} (h : s ⊆ t) (hs : s = univ) : t = univ 
Arguments: {α : Type u} {s t : Set α} (h : s ⊆ t) (hs : s = Set.univ)
Goal: t = Set.univ
-- Set.exists_mem_of_nonempty
theorem exists_mem_of_nonempty (α) : ∀ [Nonempty α], ∃ x : α, x ∈ (univ : Set α)
  
Arguments: (α : Type u_1) [Nonempty α]
Goal: ∃ x, x ∈ Set.univ
-- Set.ne_univ_iff_exists_not_mem
theorem ne_univ_iff_exists_not_mem {α : Type*} (s : Set α) : s ≠ univ ↔ ∃ a, a ∉ s 
Arguments: {α : Type u_1} (s : Set α)
Goal: s ≠ Set.univ ↔ ∃ a, a ∉ s
-- Set.not_subset_iff_exists_mem_not_mem
theorem not_subset_iff_exists_mem_not_mem {α : Type*} {s t : Set α} :
    ¬s ⊆ t ↔ ∃ x, x ∈ s ∧ x ∉ t 
Arguments: {α : Type u_1} {s t : Set α}
Goal: ¬s ⊆ t ↔ ∃ x ∈ s, x ∉ t
-- Set.univ_unique
theorem univ_unique [Unique α] : @Set.univ α = {default} 
Arguments: {α : Type u} [Unique α]
Goal: Set.univ = {default}
-- Set.ssubset_univ_iff
theorem ssubset_univ_iff : s ⊂ univ ↔ s ≠ univ 
Arguments: {α : Type u} {s : Set α}
Goal: s ⊂ Set.univ ↔ s ≠ Set.univ
-- Set.union_def
theorem union_def {s₁ s₂ : Set α} : s₁ ∪ s₂ = { a | a ∈ s₁ ∨ a ∈ s₂ } 
Arguments: {α : Type u} {s₁ s₂ : Set α}
Goal: s₁ ∪ s₂ = {a | a ∈ s₁ ∨ a ∈ s₂}
-- Set.mem_union_left
theorem mem_union_left {x : α} {a : Set α} (b : Set α) : x ∈ a → x ∈ a ∪ b 
Arguments: {α : Type u} {x : α} {a : Set α} (b : Set α)
Goal: x ∈ a → x ∈ a ∪ b
-- Set.mem_union_right
theorem mem_union_right {x : α} {b : Set α} (a : Set α) : x ∈ b → x ∈ a ∪ b 
Arguments: {α : Type u} {x : α} {b : Set α} (a : Set α)
Goal: x ∈ b → x ∈ a ∪ b
-- Set.mem_or_mem_of_mem_union
theorem mem_or_mem_of_mem_union {x : α} {a b : Set α} (H : x ∈ a ∪ b) : x ∈ a ∨ x ∈ b 
Arguments: {α : Type u} {x : α} {a b : Set α} (H : x ∈ a ∪ b)
Goal: x ∈ a ∨ x ∈ b
-- Set.MemUnion.elim
theorem MemUnion.elim {x : α} {a b : Set α} {P : Prop} (H₁ : x ∈ a ∪ b) (H₂ : x ∈ a → P)
    (H₃ : x ∈ b → P) : P 
Arguments: {α : Type u} {x : α} {a b : Set α} {P : Prop} (H₁ : x ∈ a ∪ b) (H₂ : x ∈ a → P) (H₃ : x ∈ b → P)
Goal: P
-- Set.mem_union
@[simp]
theorem mem_union (x : α) (a b : Set α) : x ∈ a ∪ b ↔ x ∈ a ∨ x ∈ b 
Arguments: {α : Type u} (x : α) (a b : Set α)
Goal: x ∈ a ∪ b ↔ x ∈ a ∨ x ∈ b
-- Set.union_self
@[simp]
theorem union_self (a : Set α) : a ∪ a = a 
Arguments: {α : Type u} (a : Set α)
Goal: a ∪ a = a
-- Set.union_empty
@[simp]
theorem union_empty (a : Set α) : a ∪ ∅ = a 
Arguments: {α : Type u} (a : Set α)
Goal: a ∪ ∅ = a
-- Set.empty_union
@[simp]
theorem empty_union (a : Set α) : ∅ ∪ a = a 
Arguments: {α : Type u} (a : Set α)
Goal: ∅ ∪ a = a
-- Set.union_comm
theorem union_comm (a b : Set α) : a ∪ b = b ∪ a 
Arguments: {α : Type u} (a b : Set α)
Goal: a ∪ b = b ∪ a
-- Set.union_assoc
theorem union_assoc (a b c : Set α) : a ∪ b ∪ c = a ∪ (b ∪ c) 
Arguments: {α : Type u} (a b c : Set α)
Goal: a ∪ b ∪ c = a ∪ (b ∪ c)
-- Set.union_left_comm
theorem union_left_comm (s₁ s₂ s₃ : Set α) : s₁ ∪ (s₂ ∪ s₃) = s₂ ∪ (s₁ ∪ s₃) 
Arguments: {α : Type u} (s₁ s₂ s₃ : Set α)
Goal: s₁ ∪ (s₂ ∪ s₃) = s₂ ∪ (s₁ ∪ s₃)
-- Set.union_right_comm
theorem union_right_comm (s₁ s₂ s₃ : Set α) : s₁ ∪ s₂ ∪ s₃ = s₁ ∪ s₃ ∪ s₂ 
Arguments: {α : Type u} (s₁ s₂ s₃ : Set α)
Goal: s₁ ∪ s₂ ∪ s₃ = s₁ ∪ s₃ ∪ s₂
-- Set.union_eq_left
@[simp]
theorem union_eq_left {s t : Set α} : s ∪ t = s ↔ t ⊆ s 
Arguments: {α : Type u} {s t : Set α}
Goal: s ∪ t = s ↔ t ⊆ s
-- Set.union_eq_right
@[simp]
theorem union_eq_right {s t : Set α} : s ∪ t = t ↔ s ⊆ t 
Arguments: {α : Type u} {s t : Set α}
Goal: s ∪ t = t ↔ s ⊆ t
-- Set.union_eq_self_of_subset_left
theorem union_eq_self_of_subset_left {s t : Set α} (h : s ⊆ t) : s ∪ t = t 
Arguments: {α : Type u} {s t : Set α} (h : s ⊆ t)
Goal: s ∪ t = t
-- Set.union_eq_self_of_subset_right
theorem union_eq_self_of_subset_right {s t : Set α} (h : t ⊆ s) : s ∪ t = s 
Arguments: {α : Type u} {s t : Set α} (h : t ⊆ s)
Goal: s ∪ t = s
-- Set.subset_union_left
@[simp]
theorem subset_union_left {s t : Set α} : s ⊆ s ∪ t 
Arguments: {α : Type u} {s t : Set α}
Goal: s ⊆ s ∪ t
-- Set.subset_union_right
@[simp]
theorem subset_union_right {s t : Set α} : t ⊆ s ∪ t 
Arguments: {α : Type u} {s t : Set α}
Goal: t ⊆ s ∪ t
-- Set.union_subset
theorem union_subset {s t r : Set α} (sr : s ⊆ r) (tr : t ⊆ r) : s ∪ t ⊆ r 
Arguments: {α : Type u} {s t r : Set α} (sr : s ⊆ r) (tr : t ⊆ r)
Goal: s ∪ t ⊆ r
-- Set.union_subset_iff
@[simp]
theorem union_subset_iff {s t u : Set α} : s ∪ t ⊆ u ↔ s ⊆ u ∧ t ⊆ u 
Arguments: {α : Type u} {s t u : Set α}
Goal: s ∪ t ⊆ u ↔ s ⊆ u ∧ t ⊆ u
-- Set.union_subset_union
@[gcongr]
theorem union_subset_union {s₁ s₂ t₁ t₂ : Set α} (h₁ : s₁ ⊆ s₂) (h₂ : t₁ ⊆ t₂) :
    s₁ ∪ t₁ ⊆ s₂ ∪ t₂ 
Arguments: {α : Type u} {s₁ s₂ t₁ t₂ : Set α} (h₁ : s₁ ⊆ s₂) (h₂ : t₁ ⊆ t₂)
Goal: s₁ ∪ t₁ ⊆ s₂ ∪ t₂
-- Set.union_subset_union_left
@[gcongr]
theorem union_subset_union_left {s₁ s₂ : Set α} (t) (h : s₁ ⊆ s₂) : s₁ ∪ t ⊆ s₂ ∪ t 
Arguments: {α : Type u} {s₁ s₂ : Set α} (t : Set α) (h : s₁ ⊆ s₂)
Goal: s₁ ∪ t ⊆ s₂ ∪ t
-- Set.union_subset_union_right
@[gcongr]
theorem union_subset_union_right (s) {t₁ t₂ : Set α} (h : t₁ ⊆ t₂) : s ∪ t₁ ⊆ s ∪ t₂ 
Arguments: {α : Type u} (s : Set α) {t₁ t₂ : Set α} (h : t₁ ⊆ t₂)
Goal: s ∪ t₁ ⊆ s ∪ t₂