ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Set.symmDiff_subset_union
theorem symmDiff_subset_union : s ∆ t ⊆ s ∪ t 
Arguments: {α : Type u} {s t : Set α}
Goal: symmDiff s t ⊆ s ∪ t
-- Set.symmDiff_eq_empty
@[simp]
theorem symmDiff_eq_empty : s ∆ t = ∅ ↔ s = t 
Arguments: {α : Type u} {s t : Set α}
Goal: symmDiff s t = ∅ ↔ s = t
-- Set.symmDiff_nonempty
@[simp]
theorem symmDiff_nonempty : (s ∆ t).Nonempty ↔ s ≠ t 
Arguments: {α : Type u} {s t : Set α}
Goal: (symmDiff s t).Nonempty ↔ s ≠ t
-- Set.inter_symmDiff_distrib_left
theorem inter_symmDiff_distrib_left (s t u : Set α) : s ∩ t ∆ u = (s ∩ t) ∆ (s ∩ u) 
Arguments: {α : Type u} (s t u : Set α)
Goal: s ∩ symmDiff t u = symmDiff (s ∩ t) (s ∩ u)
-- Set.inter_symmDiff_distrib_right
theorem inter_symmDiff_distrib_right (s t u : Set α) : s ∆ t ∩ u = (s ∩ u) ∆ (t ∩ u) 
Arguments: {α : Type u} (s t u : Set α)
Goal: symmDiff s t ∩ u = symmDiff (s ∩ u) (t ∩ u)
-- Set.subset_symmDiff_union_symmDiff_left
theorem subset_symmDiff_union_symmDiff_left (h : Disjoint s t) : u ⊆ s ∆ u ∪ t ∆ u 
Arguments: {α : Type u} {s t u : Set α} (h : Disjoint s t)
Goal: u ⊆ symmDiff s u ∪ symmDiff t u
-- Set.subset_symmDiff_union_symmDiff_right
theorem subset_symmDiff_union_symmDiff_right (h : Disjoint t u) : s ⊆ s ∆ t ∪ s ∆ u 
Arguments: {α : Type u} {s t u : Set α} (h : Disjoint t u)
Goal: s ⊆ symmDiff s t ∪ symmDiff s u
-- Set.mem_powerset
theorem mem_powerset {x s : Set α} (h : x ⊆ s) : x ∈ 𝒫 s 
Arguments: {α : Type u} {x s : Set α} (h : x ⊆ s)
Goal: x ∈ 𝒫 s
-- Set.subset_of_mem_powerset
theorem subset_of_mem_powerset {x s : Set α} (h : x ∈ 𝒫 s) : x ⊆ s 
Arguments: {α : Type u} {x s : Set α} (h : x ∈ 𝒫 s)
Goal: x ⊆ s
-- Set.mem_powerset_iff
@[simp]
theorem mem_powerset_iff (x s : Set α) : x ∈ 𝒫 s ↔ x ⊆ s 
Arguments: {α : Type u} (x s : Set α)
Goal: x ∈ 𝒫 s ↔ x ⊆ s
-- Set.powerset_inter
theorem powerset_inter (s t : Set α) : 𝒫(s ∩ t) = 𝒫 s ∩ 𝒫 t 
Arguments: {α : Type u} (s t : Set α)
Goal: 𝒫(s ∩ t) = 𝒫 s ∩ 𝒫 t
-- Set.powerset_mono
@[simp]
theorem powerset_mono : 𝒫 s ⊆ 𝒫 t ↔ s ⊆ t 
Arguments: {α : Type u} {s t : Set α}
Goal: 𝒫 s ⊆ 𝒫 t ↔ s ⊆ t
-- Set.monotone_powerset
theorem monotone_powerset : Monotone (powerset : Set α → Set (Set α)) 
Arguments: {α : Type u}
Goal: Monotone Set.powerset
-- Set.powerset_nonempty
@[simp]
theorem powerset_nonempty : (𝒫 s).Nonempty 
Arguments: {α : Type u} {s : Set α}
Goal: (𝒫 s).Nonempty
-- Set.powerset_empty
@[simp]
theorem powerset_empty : 𝒫(∅ : Set α) = {∅} 
Arguments: {α : Type u}
Goal: 𝒫∅ = {∅}
-- Set.powerset_univ
@[simp]
theorem powerset_univ : 𝒫(univ : Set α) = univ 
Arguments: {α : Type u}
Goal: 𝒫 Set.univ = Set.univ
-- Set.powerset_singleton
theorem powerset_singleton (x : α) : 𝒫({x} : Set α) = {∅, {x}} 
Arguments: {α : Type u} (x : α)
Goal: 𝒫{x} = {∅, {x}}
-- Set.mem_dite
theorem mem_dite (p : Prop) [Decidable p] (s : p → Set α) (t : ¬ p → Set α) (x : α) :
    (x ∈ if h : p then s h else t h) ↔ (∀ h : p, x ∈ s h) ∧ ∀ h : ¬p, x ∈ t h 
Arguments: {α : Type u} (p : Prop) [Decidable p] (s : p → Set α) (t : ¬p → Set α) (x : α)
Goal: (x ∈ if h : p then s h else t h) ↔ (∀ (h : p), x ∈ s h) ∧ ∀ (h : ¬p), x ∈ t h
-- Set.mem_dite_univ_right
theorem mem_dite_univ_right (p : Prop) [Decidable p] (t : p → Set α) (x : α) :
    (x ∈ if h : p then t h else univ) ↔ ∀ h : p, x ∈ t h 
Arguments: {α : Type u} (p : Prop) [Decidable p] (t : p → Set α) (x : α)
Goal: (x ∈ if h : p then t h else Set.univ) ↔ ∀ (h : p), x ∈ t h
-- Set.mem_ite_univ_right
@[simp]
theorem mem_ite_univ_right (p : Prop) [Decidable p] (t : Set α) (x : α) :
    x ∈ ite p t Set.univ ↔ p → x ∈ t 
Arguments: {α : Type u} (p : Prop) [Decidable p] (t : Set α) (x : α)
Goal: (x ∈ if p then t else Set.univ) ↔ p → x ∈ t
-- Set.mem_dite_univ_left
theorem mem_dite_univ_left (p : Prop) [Decidable p] (t : ¬p → Set α) (x : α) :
    (x ∈ if h : p then univ else t h) ↔ ∀ h : ¬p, x ∈ t h 
Arguments: {α : Type u} (p : Prop) [Decidable p] (t : ¬p → Set α) (x : α)
Goal: (x ∈ if h : p then Set.univ else t h) ↔ ∀ (h : ¬p), x ∈ t h
-- Set.mem_ite_univ_left
@[simp]
theorem mem_ite_univ_left (p : Prop) [Decidable p] (t : Set α) (x : α) :
    x ∈ ite p Set.univ t ↔ ¬p → x ∈ t 
Arguments: {α : Type u} (p : Prop) [Decidable p] (t : Set α) (x : α)
Goal: (x ∈ if p then Set.univ else t) ↔ ¬p → x ∈ t
-- Set.mem_dite_empty_right
theorem mem_dite_empty_right (p : Prop) [Decidable p] (t : p → Set α) (x : α) :
    (x ∈ if h : p then t h else ∅) ↔ ∃ h : p, x ∈ t h 
Arguments: {α : Type u} (p : Prop) [Decidable p] (t : p → Set α) (x : α)
Goal: (x ∈ if h : p then t h else ∅) ↔ ∃ (h : p), x ∈ t h
-- Set.mem_ite_empty_right
@[simp]
theorem mem_ite_empty_right (p : Prop) [Decidable p] (t : Set α) (x : α) :
    x ∈ ite p t ∅ ↔ p ∧ x ∈ t 
Arguments: {α : Type u} (p : Prop) [Decidable p] (t : Set α) (x : α)
Goal: (x ∈ if p then t else ∅) ↔ p ∧ x ∈ t
-- Set.mem_dite_empty_left
theorem mem_dite_empty_left (p : Prop) [Decidable p] (t : ¬p → Set α) (x : α) :
    (x ∈ if h : p then ∅ else t h) ↔ ∃ h : ¬p, x ∈ t h 
Arguments: {α : Type u} (p : Prop) [Decidable p] (t : ¬p → Set α) (x : α)
Goal: (x ∈ if h : p then ∅ else t h) ↔ ∃ (h : ¬p), x ∈ t h
-- Set.mem_ite_empty_left
@[simp]
theorem mem_ite_empty_left (p : Prop) [Decidable p] (t : Set α) (x : α) :
    x ∈ ite p ∅ t ↔ ¬p ∧ x ∈ t 
Arguments: {α : Type u} (p : Prop) [Decidable p] (t : Set α) (x : α)
Goal: (x ∈ if p then ∅ else t) ↔ ¬p ∧ x ∈ t
-- Set.ite_inter_self
@[simp]
theorem ite_inter_self (t s s' : Set α) : t.ite s s' ∩ t = s ∩ t 
Arguments: {α : Type u} (t s s' : Set α)
Goal: t.ite s s' ∩ t = s ∩ t
-- Set.ite_compl
@[simp]
theorem ite_compl (t s s' : Set α) : tᶜ.ite s s' = t.ite s' s 
Arguments: {α : Type u} (t s s' : Set α)
Goal: tᶜ.ite s s' = t.ite s' s
-- Set.ite_inter_compl_self
@[simp]
theorem ite_inter_compl_self (t s s' : Set α) : t.ite s s' ∩ tᶜ = s' ∩ tᶜ 
Arguments: {α : Type u} (t s s' : Set α)
Goal: t.ite s s' ∩ tᶜ = s' ∩ tᶜ
-- Set.ite_diff_self
@[simp]
theorem ite_diff_self (t s s' : Set α) : t.ite s s' \ t = s' \ t 
Arguments: {α : Type u} (t s s' : Set α)
Goal: t.ite s s' \ t = s' \ t
-- Set.ite_same
@[simp]
theorem ite_same (t s : Set α) : t.ite s s = s 
Arguments: {α : Type u} (t s : Set α)
Goal: t.ite s s = s
-- Set.ite_left
@[simp]
theorem ite_left (s t : Set α) : s.ite s t = s ∪ t 
Arguments: {α : Type u} (s t : Set α)
Goal: s.ite s t = s ∪ t
-- Set.ite_right
@[simp]
theorem ite_right (s t : Set α) : s.ite t s = t ∩ s 
Arguments: {α : Type u} (s t : Set α)
Goal: s.ite t s = t ∩ s
-- Set.ite_empty
@[simp]
theorem ite_empty (s s' : Set α) : Set.ite ∅ s s' = s' 
Arguments: {α : Type u} (s s' : Set α)
Goal: ∅.ite s s' = s'
-- Set.ite_univ
@[simp]
theorem ite_univ (s s' : Set α) : Set.ite univ s s' = s 
Arguments: {α : Type u} (s s' : Set α)
Goal: Set.univ.ite s s' = s
-- Set.ite_empty_left
@[simp]
theorem ite_empty_left (t s : Set α) : t.ite ∅ s = s \ t 
Arguments: {α : Type u} (t s : Set α)
Goal: t.ite ∅ s = s \ t
-- Set.ite_empty_right
@[simp]
theorem ite_empty_right (t s : Set α) : t.ite s ∅ = s ∩ t 
Arguments: {α : Type u} (t s : Set α)
Goal: t.ite s ∅ = s ∩ t
-- Set.ite_mono
theorem ite_mono (t : Set α) {s₁ s₁' s₂ s₂' : Set α} (h : s₁ ⊆ s₂) (h' : s₁' ⊆ s₂') :
    t.ite s₁ s₁' ⊆ t.ite s₂ s₂' 
Arguments: {α : Type u} (t : Set α) {s₁ s₁' s₂ s₂' : Set α} (h : s₁ ⊆ s₂) (h' : s₁' ⊆ s₂')
Goal: t.ite s₁ s₁' ⊆ t.ite s₂ s₂'
-- Set.ite_subset_union
theorem ite_subset_union (t s s' : Set α) : t.ite s s' ⊆ s ∪ s' 
Arguments: {α : Type u} (t s s' : Set α)
Goal: t.ite s s' ⊆ s ∪ s'
-- Set.inter_subset_ite
theorem inter_subset_ite (t s s' : Set α) : s ∩ s' ⊆ t.ite s s' 
Arguments: {α : Type u} (t s s' : Set α)
Goal: s ∩ s' ⊆ t.ite s s'
-- Set.ite_inter_inter
theorem ite_inter_inter (t s₁ s₂ s₁' s₂' : Set α) :
    t.ite (s₁ ∩ s₂) (s₁' ∩ s₂') = t.ite s₁ s₁' ∩ t.ite s₂ s₂' 
Arguments: {α : Type u} (t s₁ s₂ s₁' s₂' : Set α)
Goal: t.ite (s₁ ∩ s₂) (s₁' ∩ s₂') = t.ite s₁ s₁' ∩ t.ite s₂ s₂'
-- Set.ite_inter
theorem ite_inter (t s₁ s₂ s : Set α) : t.ite (s₁ ∩ s) (s₂ ∩ s) = t.ite s₁ s₂ ∩ s 
Arguments: {α : Type u} (t s₁ s₂ s : Set α)
Goal: t.ite (s₁ ∩ s) (s₂ ∩ s) = t.ite s₁ s₂ ∩ s
-- Set.ite_inter_of_inter_eq
theorem ite_inter_of_inter_eq (t : Set α) {s₁ s₂ s : Set α} (h : s₁ ∩ s = s₂ ∩ s) :
    t.ite s₁ s₂ ∩ s = s₁ ∩ s 
Arguments: {α : Type u} (t : Set α) {s₁ s₂ s : Set α} (h : s₁ ∩ s = s₂ ∩ s)
Goal: t.ite s₁ s₂ ∩ s = s₁ ∩ s
-- Set.subset_ite
theorem subset_ite {t s s' u : Set α} : u ⊆ t.ite s s' ↔ u ∩ t ⊆ s ∧ u \ t ⊆ s' 
Arguments: {α : Type u} {t s s' u : Set α}
Goal: u ⊆ t.ite s s' ↔ u ∩ t ⊆ s ∧ u \ t ⊆ s'
-- Set.ite_eq_of_subset_left
theorem ite_eq_of_subset_left (t : Set α) {s₁ s₂ : Set α} (h : s₁ ⊆ s₂) :
    t.ite s₁ s₂ = s₁ ∪ (s₂ \ t) 
Arguments: {α : Type u} (t : Set α) {s₁ s₂ : Set α} (h : s₁ ⊆ s₂)
Goal: t.ite s₁ s₂ = s₁ ∪ s₂ \ t
-- Set.ite_eq_of_subset_right
theorem ite_eq_of_subset_right (t : Set α) {s₁ s₂ : Set α} (h : s₂ ⊆ s₁) :
    t.ite s₁ s₂ = (s₁ ∩ t) ∪ s₂ 
Arguments: {α : Type u} (t : Set α) {s₁ s₂ : Set α} (h : s₂ ⊆ s₁)
Goal: t.ite s₁ s₂ = s₁ ∩ t ∪ s₂
-- Set.monotoneOn_iff_monotone
theorem monotoneOn_iff_monotone : MonotoneOn f s ↔
    Monotone fun a : s => f a 
Arguments: {α : Type u} {β : Type v} {s : Set α} [Preorder α] [Preorder β] {f : α → β}
Goal: MonotoneOn f s ↔ Monotone fun a => f ↑a
-- Set.antitoneOn_iff_antitone
theorem antitoneOn_iff_antitone : AntitoneOn f s ↔
    Antitone fun a : s => f a 
Arguments: {α : Type u} {β : Type v} {s : Set α} [Preorder α] [Preorder β] {f : α → β}
Goal: AntitoneOn f s ↔ Antitone fun a => f ↑a
-- Set.strictMonoOn_iff_strictMono
theorem strictMonoOn_iff_strictMono : StrictMonoOn f s ↔
    StrictMono fun a : s => f a 
Arguments: {α : Type u} {β : Type v} {s : Set α} [Preorder α] [Preorder β] {f : α → β}
Goal: StrictMonoOn f s ↔ StrictMono fun a => f ↑a
-- Set.strictAntiOn_iff_strictAnti
theorem strictAntiOn_iff_strictAnti : StrictAntiOn f s ↔
    StrictAnti fun a : s => f a 
Arguments: {α : Type u} {β : Type v} {s : Set α} [Preorder α] [Preorder β] {f : α → β}
Goal: StrictAntiOn f s ↔ StrictAnti fun a => f ↑a
-- Set.not_monotoneOn_not_antitoneOn_iff_exists_le_le
theorem not_monotoneOn_not_antitoneOn_iff_exists_le_le :
    ¬MonotoneOn f s ∧ ¬AntitoneOn f s ↔
      ∃ᵉ (a ∈ s) (b ∈ s) (c ∈ s), a ≤ b ∧ b ≤ c ∧
        (f a < f b ∧ f c < f b ∨ f b < f a ∧ f b < f c) 
Arguments: {α : Type u} {β : Type v} {s : Set α} [LinearOrder α] [LinearOrder β] {f : α → β}
Goal: ¬MonotoneOn f s ∧ ¬AntitoneOn f s ↔
  ∃ a ∈ s, ∃ b ∈ s, ∃ c ∈ s, a ≤ b ∧ b ≤ c ∧ (f a < f b ∧ f c < f b ∨ f b < f a ∧ f b < f c)
-- Set.not_monotoneOn_not_antitoneOn_iff_exists_lt_lt
theorem not_monotoneOn_not_antitoneOn_iff_exists_lt_lt :
    ¬MonotoneOn f s ∧ ¬AntitoneOn f s ↔
      ∃ᵉ (a ∈ s) (b ∈ s) (c ∈ s), a < b ∧ b < c ∧
        (f a < f b ∧ f c < f b ∨ f b < f a ∧ f b < f c) 
Arguments: {α : Type u} {β : Type v} {s : Set α} [LinearOrder α] [LinearOrder β] {f : α → β}
Goal: ¬MonotoneOn f s ∧ ¬AntitoneOn f s ↔
  ∃ a ∈ s, ∃ b ∈ s, ∃ c ∈ s, a < b ∧ b < c ∧ (f a < f b ∧ f c < f b ∨ f b < f a ∧ f b < f c)
-- Function.Injective.nonempty_apply_iff
theorem Injective.nonempty_apply_iff {f : Set α → Set β} (hf : Injective f) (h2 : f ∅ = ∅)
    {s : Set α} : (f s).Nonempty ↔ s.Nonempty 
Arguments: {α : Type u_2} {β : Type u_3} {f : Set α → Set β} (hf : Function.Injective f) (h2 : f ∅ = ∅) {s : Set α}
Goal: (f s).Nonempty ↔ s.Nonempty
-- Set.inclusion_self
@[simp]
theorem inclusion_self (x : s) : inclusion Subset.rfl x = x 
Arguments: {α : Type u_1} {s : Set α} (x : ↑s)
Goal: Set.inclusion ⋯ x = x
-- Set.inclusion_eq_id
theorem inclusion_eq_id (h : s ⊆ s) : inclusion h = id 
Arguments: {α : Type u_1} {s : Set α} (h : s ⊆ s)
Goal: Set.inclusion h = id
-- Set.inclusion_mk
@[simp]
theorem inclusion_mk {h : s ⊆ t} (a : α) (ha : a ∈ s) : inclusion h ⟨a, ha⟩ = ⟨a, h ha⟩ 
Arguments: {α : Type u_1} {s t : Set α} {h : s ⊆ t} (a : α) (ha : a ∈ s)
Goal: Set.inclusion h ⟨a, ha⟩ = ⟨a, ⋯⟩
-- Set.inclusion_right
theorem inclusion_right (h : s ⊆ t) (x : t) (m : (x : α) ∈ s) : inclusion h ⟨x, m⟩ = x 
Arguments: {α : Type u_1} {s t : Set α} (h : s ⊆ t) (x : ↑t) (m : ↑x ∈ s)
Goal: Set.inclusion h ⟨↑x, m⟩ = x
-- Set.inclusion_inclusion
@[simp]
theorem inclusion_inclusion (hst : s ⊆ t) (htu : t ⊆ u) (x : s) :
    inclusion htu (inclusion hst x) = inclusion (hst.trans htu) x 
Arguments: {α : Type u_1} {s t u : Set α} (hst : s ⊆ t) (htu : t ⊆ u) (x : ↑s)
Goal: Set.inclusion htu (Set.inclusion hst x) = Set.inclusion ⋯ x
-- Set.inclusion_comp_inclusion
@[simp]
theorem inclusion_comp_inclusion {α} {s t u : Set α} (hst : s ⊆ t) (htu : t ⊆ u) :
    inclusion htu ∘ inclusion hst = inclusion (hst.trans htu) 
Arguments: {α : Type u_2} {s t u : Set α} (hst : s ⊆ t) (htu : t ⊆ u)
Goal: Set.inclusion htu ∘ Set.inclusion hst = Set.inclusion ⋯
-- Set.coe_inclusion
@[simp]
theorem coe_inclusion (h : s ⊆ t) (x : s) : (inclusion h x : α) = (x : α) 
Arguments: {α : Type u_1} {s t : Set α} (h : s ⊆ t) (x : ↑s)
Goal: ↑(Set.inclusion h x) = ↑x
-- Set.val_comp_inclusion
theorem val_comp_inclusion (h : s ⊆ t) : Subtype.val ∘ inclusion h = Subtype.val 
Arguments: {α : Type u_1} {s t : Set α} (h : s ⊆ t)
Goal: Subtype.val ∘ Set.inclusion h = Subtype.val
-- Set.inclusion_injective
theorem inclusion_injective (h : s ⊆ t) : Injective (inclusion h)
  
Arguments: {α : Type u_1} {s t : Set α} (h : s ⊆ t)
Goal: Function.Injective (Set.inclusion h)
-- Set.inclusion_inj
@[simp]
theorem inclusion_inj (h : s ⊆ t) {x y : s} : inclusion h x = inclusion h y ↔ x = y 
Arguments: {α : Type u_1} {s t : Set α} (h : s ⊆ t) {x y : ↑s}
Goal: Set.inclusion h x = Set.inclusion h y ↔ x = y
-- Set.eq_of_inclusion_surjective
theorem eq_of_inclusion_surjective {s t : Set α} {h : s ⊆ t}
    (h_surj : Function.Surjective (inclusion h)) : s = t 
Arguments: {α : Type u_1} {s t : Set α} {h : s ⊆ t} (h_surj : Function.Surjective (Set.inclusion h))
Goal: s = t
-- Set.inclusion_le_inclusion
@[simp]
theorem inclusion_le_inclusion [Preorder α] {s t : Set α} (h : s ⊆ t) {x y : s} :
    inclusion h x ≤ inclusion h y ↔ x ≤ y 
Arguments: {α : Type u_1} [Preorder α] {s t : Set α} (h : s ⊆ t) {x y : ↑s}
Goal: Set.inclusion h x ≤ Set.inclusion h y ↔ x ≤ y
-- Set.inclusion_lt_inclusion
@[simp]
theorem inclusion_lt_inclusion [Preorder α] {s t : Set α} (h : s ⊆ t) {x y : s} :
    inclusion h x < inclusion h y ↔ x < y 
Arguments: {α : Type u_1} [Preorder α] {s t : Set α} (h : s ⊆ t) {x y : ↑s}
Goal: Set.inclusion h x < Set.inclusion h y ↔ x < y
-- Subsingleton.eq_univ_of_nonempty
theorem eq_univ_of_nonempty {s : Set α} : s.Nonempty → s = univ 
Arguments: {α : Type u_1} [Subsingleton α] {s : Set α}
Goal: s.Nonempty → s = Set.univ
-- Subsingleton.set_cases
@[elab_as_elim]
theorem set_cases {p : Set α → Prop} (h0 : p ∅) (h1 : p univ) (s) : p s 
Arguments: {α : Type u_1} [Subsingleton α] {p : Set α → Prop} (h0 : p ∅) (h1 : p Set.univ) (s : Set α)
Goal: p s
-- Subsingleton.mem_iff_nonempty
theorem mem_iff_nonempty {α : Type*} [Subsingleton α] {s : Set α} {x : α} : x ∈ s ↔ s.Nonempty 
Arguments: {α : Type u_2} [Subsingleton α] {s : Set α} {x : α}
Goal: x ∈ s ↔ s.Nonempty
-- Monotone.inter
theorem Monotone.inter [Preorder β] {f g : β → Set α} (hf : Monotone f) (hg : Monotone g) :
    Monotone fun x => f x ∩ g x 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder β] {f g : β → Set α} (hf : Monotone f) (hg : Monotone g)
Goal: Monotone fun x => f x ∩ g x
-- MonotoneOn.inter
theorem MonotoneOn.inter [Preorder β] {f g : β → Set α} {s : Set β} (hf : MonotoneOn f s)
    (hg : MonotoneOn g s) : MonotoneOn (fun x => f x ∩ g x) s 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder β] {f g : β → Set α} {s : Set β} (hf : MonotoneOn f s) (hg : MonotoneOn g s)
Goal: MonotoneOn (fun x => f x ∩ g x) s
-- Antitone.inter
theorem Antitone.inter [Preorder β] {f g : β → Set α} (hf : Antitone f) (hg : Antitone g) :
    Antitone fun x => f x ∩ g x 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder β] {f g : β → Set α} (hf : Antitone f) (hg : Antitone g)
Goal: Antitone fun x => f x ∩ g x
-- AntitoneOn.inter
theorem AntitoneOn.inter [Preorder β] {f g : β → Set α} {s : Set β} (hf : AntitoneOn f s)
    (hg : AntitoneOn g s) : AntitoneOn (fun x => f x ∩ g x) s 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder β] {f g : β → Set α} {s : Set β} (hf : AntitoneOn f s) (hg : AntitoneOn g s)
Goal: AntitoneOn (fun x => f x ∩ g x) s
-- Monotone.union
theorem Monotone.union [Preorder β] {f g : β → Set α} (hf : Monotone f) (hg : Monotone g) :
    Monotone fun x => f x ∪ g x 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder β] {f g : β → Set α} (hf : Monotone f) (hg : Monotone g)
Goal: Monotone fun x => f x ∪ g x
-- MonotoneOn.union
theorem MonotoneOn.union [Preorder β] {f g : β → Set α} {s : Set β} (hf : MonotoneOn f s)
    (hg : MonotoneOn g s) : MonotoneOn (fun x => f x ∪ g x) s 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder β] {f g : β → Set α} {s : Set β} (hf : MonotoneOn f s) (hg : MonotoneOn g s)
Goal: MonotoneOn (fun x => f x ∪ g x) s
-- Antitone.union
theorem Antitone.union [Preorder β] {f g : β → Set α} (hf : Antitone f) (hg : Antitone g) :
    Antitone fun x => f x ∪ g x 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder β] {f g : β → Set α} (hf : Antitone f) (hg : Antitone g)
Goal: Antitone fun x => f x ∪ g x
-- AntitoneOn.union
theorem AntitoneOn.union [Preorder β] {f g : β → Set α} {s : Set β} (hf : AntitoneOn f s)
    (hg : AntitoneOn g s) : AntitoneOn (fun x => f x ∪ g x) s 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder β] {f g : β → Set α} {s : Set β} (hf : AntitoneOn f s) (hg : AntitoneOn g s)
Goal: AntitoneOn (fun x => f x ∪ g x) s
-- Set.monotone_setOf
theorem monotone_setOf [Preorder α] {p : α → β → Prop} (hp : ∀ b, Monotone fun a => p a b) :
    Monotone fun a => { b | p a b } 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder α] {p : α → β → Prop} (hp : ∀ (b : β), Monotone fun a => p a b)
Goal: Monotone fun a => {b | p a b}
-- Set.antitone_setOf
theorem antitone_setOf [Preorder α] {p : α → β → Prop} (hp : ∀ b, Antitone fun a => p a b) :
    Antitone fun a => { b | p a b } 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder α] {p : α → β → Prop} (hp : ∀ (b : β), Antitone fun a => p a b)
Goal: Antitone fun a => {b | p a b}
-- Set.antitone_bforall
theorem antitone_bforall {P : α → Prop} : Antitone fun s : Set α => ∀ x ∈ s, P x 
Arguments: {α : Type u_1} {P : α → Prop}
Goal: Antitone fun s => ∀ x ∈ s, P x
-- Disjoint.union_left
theorem union_left (hs : Disjoint s u) (ht : Disjoint t u) : Disjoint (s ∪ t) u 
Arguments: {α : Type u_1} {s t u : Set α} (hs : Disjoint s u) (ht : Disjoint t u)
Goal: Disjoint (s ∪ t) u
-- Disjoint.union_right
theorem union_right (ht : Disjoint s t) (hu : Disjoint s u) : Disjoint s (t ∪ u) 
Arguments: {α : Type u_1} {s t u : Set α} (ht : Disjoint s t) (hu : Disjoint s u)
Goal: Disjoint s (t ∪ u)
-- Disjoint.inter_left
theorem inter_left (u : Set α) (h : Disjoint s t) : Disjoint (s ∩ u) t 
Arguments: {α : Type u_1} {s t : Set α} (u : Set α) (h : Disjoint s t)
Goal: Disjoint (s ∩ u) t
-- Disjoint.inter_left'
theorem inter_left' (u : Set α) (h : Disjoint s t) : Disjoint (u ∩ s) t 
Arguments: {α : Type u_1} {s t : Set α} (u : Set α) (h : Disjoint s t)
Goal: Disjoint (u ∩ s) t
-- Disjoint.inter_right
theorem inter_right (u : Set α) (h : Disjoint s t) : Disjoint s (t ∩ u) 
Arguments: {α : Type u_1} {s t : Set α} (u : Set α) (h : Disjoint s t)
Goal: Disjoint s (t ∩ u)
-- Disjoint.inter_right'
theorem inter_right' (u : Set α) (h : Disjoint s t) : Disjoint s (u ∩ t) 
Arguments: {α : Type u_1} {s t : Set α} (u : Set α) (h : Disjoint s t)
Goal: Disjoint s (u ∩ t)
-- Disjoint.subset_left_of_subset_union
theorem subset_left_of_subset_union (h : s ⊆ t ∪ u) (hac : Disjoint s u) : s ⊆ t 
Arguments: {α : Type u_1} {s t u : Set α} (h : s ⊆ t ∪ u) (hac : Disjoint s u)
Goal: s ⊆ t
-- Disjoint.subset_right_of_subset_union
theorem subset_right_of_subset_union (h : s ⊆ t ∪ u) (hab : Disjoint s t) : s ⊆ u 
Arguments: {α : Type u_1} {s t u : Set α} (h : s ⊆ t ∪ u) (hab : Disjoint s t)
Goal: s ⊆ u
-- Prop.compl_singleton
@[simp] theorem Prop.compl_singleton (p : Prop) : ({p}ᶜ : Set Prop) = {¬p} 
Arguments: (p : Prop)
Goal: {p}ᶜ = {¬p}
-- NNRat.coe_indicator
@[simp, norm_cast]
lemma coe_indicator (s : Set α) (f : α → ℚ≥0) (a : α) :
    ((s.indicator f a : ℚ≥0) : ℚ) = s.indicator (fun x ↦ ↑(f x)) a 
Arguments: {α : Type u_1} (s : Set α) (f : α → ℚ≥0) (a : α)
Goal: ↑(s.indicator f a) = s.indicator (fun x => ↑(f x)) a
-- Rat.toNNRat_inv
lemma toNNRat_inv (q : ℚ) : toNNRat q⁻¹ = (toNNRat q)⁻¹ 
Arguments: (q : ℚ)
Goal: q⁻¹.toNNRat = q.toNNRat⁻¹
-- Rat.toNNRat_div
lemma toNNRat_div (hp : 0 ≤ p) : toNNRat (p / q) = toNNRat p / toNNRat q 
Arguments: {p q : ℚ} (hp : 0 ≤ p)
Goal: (p / q).toNNRat = p.toNNRat / q.toNNRat
-- Rat.toNNRat_div'
lemma toNNRat_div' (hq : 0 ≤ q) : toNNRat (p / q) = toNNRat p / toNNRat q 
Arguments: {p q : ℚ} (hq : 0 ≤ q)
Goal: (p / q).toNNRat = p.toNNRat / q.toNNRat
-- NNRat.num_div_den
@[simp]
lemma num_div_den (q : ℚ≥0) : (q.num : ℚ≥0) / q.den = q 
Arguments: (q : ℚ≥0)
Goal: ↑q.num / ↑q.den = q
-- NNRat.coe_list_sum
@[norm_cast]
theorem coe_list_sum (l : List ℚ≥0) : (l.sum : ℚ) = (l.map (↑)).sum 
Arguments: (l : List ℚ≥0)
Goal: ↑l.sum = (List.map NNRat.cast l).sum
-- NNRat.coe_list_prod
@[norm_cast]
theorem coe_list_prod (l : List ℚ≥0) : (l.prod : ℚ) = (l.map (↑)).prod 
Arguments: (l : List ℚ≥0)
Goal: ↑l.prod = (List.map NNRat.cast l).prod
-- NNRat.coe_multiset_sum
@[norm_cast]
theorem coe_multiset_sum (s : Multiset ℚ≥0) : (s.sum : ℚ) = (s.map (↑)).sum 
Arguments: (s : Multiset ℚ≥0)
Goal: ↑s.sum = (Multiset.map NNRat.cast s).sum
-- NNRat.coe_multiset_prod
@[norm_cast]
theorem coe_multiset_prod (s : Multiset ℚ≥0) : (s.prod : ℚ) = (s.map (↑)).prod 
Arguments: (s : Multiset ℚ≥0)
Goal: ↑s.prod = (Multiset.map NNRat.cast s).prod
-- NNRat.coe_sum
@[norm_cast]
theorem coe_sum {s : Finset α} {f : α → ℚ≥0} : ↑(∑ a ∈ s, f a) = ∑ a ∈ s, (f a : ℚ) 
Arguments: {α : Type u_2} {s : Finset α} {f : α → ℚ≥0}
Goal: ↑(∑ a ∈ s, f a) = ∑ a ∈ s, ↑(f a)
-- NNRat.toNNRat_sum_of_nonneg
theorem toNNRat_sum_of_nonneg {s : Finset α} {f : α → ℚ} (hf : ∀ a, a ∈ s → 0 ≤ f a) :
    (∑ a ∈ s, f a).toNNRat = ∑ a ∈ s, (f a).toNNRat 
Arguments: {α : Type u_2} {s : Finset α} {f : α → ℚ} (hf : ∀ a ∈ s, 0 ≤ f a)
Goal: (∑ a ∈ s, f a).toNNRat = ∑ a ∈ s, (f a).toNNRat
-- NNRat.coe_prod
@[norm_cast]
theorem coe_prod {s : Finset α} {f : α → ℚ≥0} : ↑(∏ a ∈ s, f a) = ∏ a ∈ s, (f a : ℚ) 
Arguments: {α : Type u_2} {s : Finset α} {f : α → ℚ≥0}
Goal: ↑(∏ a ∈ s, f a) = ∏ a ∈ s, ↑(f a)
-- NNRat.toNNRat_prod_of_nonneg
theorem toNNRat_prod_of_nonneg {s : Finset α} {f : α → ℚ} (hf : ∀ a ∈ s, 0 ≤ f a) :
    (∏ a ∈ s, f a).toNNRat = ∏ a ∈ s, (f a).toNNRat 
Arguments: {α : Type u_2} {s : Finset α} {f : α → ℚ} (hf : ∀ a ∈ s, 0 ≤ f a)
Goal: (∏ a ∈ s, f a).toNNRat = ∏ a ∈ s, (f a).toNNRat
-- Ordering.ite_eq_lt_distrib
@[simp]
theorem ite_eq_lt_distrib (c : Prop) [Decidable c] (a b : Ordering) :
    ((if c then a else b) = Ordering.lt) = if c then a = Ordering.lt else b = Ordering.lt 
Arguments: (c : Prop) [Decidable c] (a b : Ordering)
Goal: ((if c then a else b) = Ordering.lt) = if c then a = Ordering.lt else b = Ordering.lt
-- Ordering.ite_eq_eq_distrib
@[simp]
theorem ite_eq_eq_distrib (c : Prop) [Decidable c] (a b : Ordering) :
    ((if c then a else b) = Ordering.eq) = if c then a = Ordering.eq else b = Ordering.eq 
Arguments: (c : Prop) [Decidable c] (a b : Ordering)
Goal: ((if c then a else b) = Ordering.eq) = if c then a = Ordering.eq else b = Ordering.eq
-- Ordering.ite_eq_gt_distrib
@[simp]
theorem ite_eq_gt_distrib (c : Prop) [Decidable c] (a b : Ordering) :
    ((if c then a else b) = Ordering.gt) = if c then a = Ordering.gt else b = Ordering.gt 
Arguments: (c : Prop) [Decidable c] (a b : Ordering)
Goal: ((if c then a else b) = Ordering.gt) = if c then a = Ordering.gt else b = Ordering.gt
-- cmpUsing_eq_lt
@[simp]
theorem cmpUsing_eq_lt (a b : α) : (cmpUsing lt a b = Ordering.lt) = lt a b 
Arguments: {α : Type u} {lt : α → α → Prop} [DecidableRel lt] (a b : α)
Goal: (cmpUsing lt a b = Ordering.lt) = lt a b
-- cmpUsing_eq_gt
@[simp]
theorem cmpUsing_eq_gt [IsStrictOrder α lt] (a b : α) : cmpUsing lt a b = Ordering.gt ↔ lt b a 
Arguments: {α : Type u} {lt : α → α → Prop} [DecidableRel lt] [IsStrictOrder α lt] (a b : α)
Goal: cmpUsing lt a b = Ordering.gt ↔ lt b a
-- cmpUsing_eq_eq
@[simp]
theorem cmpUsing_eq_eq (a b : α) : cmpUsing lt a b = Ordering.eq ↔ ¬lt a b ∧ ¬lt b a 
Arguments: {α : Type u} {lt : α → α → Prop} [DecidableRel lt] (a b : α)
Goal: cmpUsing lt a b = Ordering.eq ↔ ¬lt a b ∧ ¬lt b a