ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Set.Finite.iInf_biSup_of_monotone
theorem Finite.iInf_biSup_of_monotone {ι ι' α : Type*} [Preorder ι'] [Nonempty ι']
    [IsDirected ι' (swap (· ≤ ·))] [Order.Coframe α] {s : Set ι} (hs : s.Finite) {f : ι → ι' → α}
    (hf : ∀ i ∈ s, Monotone (f i)) : ⨅ j, ⨆ i ∈ s, f i j = ⨆ i ∈ s, ⨅ j, f i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} [Preorder ι'] [Nonempty ι'] [IsDirected ι' (Function.swap fun x x_1 => x ≤ x_1)] [Order.Coframe α] {s : Set ι} (hs : s.Finite) {f : ι → ι' → α} (hf : ∀ i ∈ s, Monotone (f i))
Goal: ⨅ j, ⨆ i ∈ s, f i j = ⨆ i ∈ s, ⨅ j, f i j
-- Set.Finite.iInf_biSup_of_antitone
theorem Finite.iInf_biSup_of_antitone {ι ι' α : Type*} [Preorder ι'] [Nonempty ι']
    [IsDirected ι' (· ≤ ·)] [Order.Coframe α] {s : Set ι} (hs : s.Finite) {f : ι → ι' → α}
    (hf : ∀ i ∈ s, Antitone (f i)) : ⨅ j, ⨆ i ∈ s, f i j = ⨆ i ∈ s, ⨅ j, f i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} [Preorder ι'] [Nonempty ι'] [IsDirected ι' fun x x_1 => x ≤ x_1] [Order.Coframe α] {s : Set ι} (hs : s.Finite) {f : ι → ι' → α} (hf : ∀ i ∈ s, Antitone (f i))
Goal: ⨅ j, ⨆ i ∈ s, f i j = ⨆ i ∈ s, ⨅ j, f i j
-- Set.iSup_iInf_of_monotone
theorem iSup_iInf_of_monotone {ι ι' α : Type*} [Finite ι] [Preorder ι'] [Nonempty ι']
    [IsDirected ι' (· ≤ ·)] [Order.Frame α] {f : ι → ι' → α} (hf : ∀ i, Monotone (f i)) :
    ⨆ j, ⨅ i, f i j = ⨅ i, ⨆ j, f i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} [Finite ι] [Preorder ι'] [Nonempty ι'] [IsDirected ι' fun x x_1 => x ≤ x_1] [Order.Frame α] {f : ι → ι' → α} (hf : ∀ (i : ι), Monotone (f i))
Goal: ⨆ j, ⨅ i, f i j = ⨅ i, ⨆ j, f i j
-- Set.iSup_iInf_of_antitone
theorem iSup_iInf_of_antitone {ι ι' α : Type*} [Finite ι] [Preorder ι'] [Nonempty ι']
    [IsDirected ι' (swap (· ≤ ·))] [Order.Frame α] {f : ι → ι' → α} (hf : ∀ i, Antitone (f i)) :
    ⨆ j, ⨅ i, f i j = ⨅ i, ⨆ j, f i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} [Finite ι] [Preorder ι'] [Nonempty ι'] [IsDirected ι' (Function.swap fun x x_1 => x ≤ x_1)] [Order.Frame α] {f : ι → ι' → α} (hf : ∀ (i : ι), Antitone (f i))
Goal: ⨆ j, ⨅ i, f i j = ⨅ i, ⨆ j, f i j
-- Set.iInf_iSup_of_monotone
theorem iInf_iSup_of_monotone {ι ι' α : Type*} [Finite ι] [Preorder ι'] [Nonempty ι']
    [IsDirected ι' (swap (· ≤ ·))] [Order.Coframe α] {f : ι → ι' → α} (hf : ∀ i, Monotone (f i)) :
    ⨅ j, ⨆ i, f i j = ⨆ i, ⨅ j, f i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} [Finite ι] [Preorder ι'] [Nonempty ι'] [IsDirected ι' (Function.swap fun x x_1 => x ≤ x_1)] [Order.Coframe α] {f : ι → ι' → α} (hf : ∀ (i : ι), Monotone (f i))
Goal: ⨅ j, ⨆ i, f i j = ⨆ i, ⨅ j, f i j
-- Set.iInf_iSup_of_antitone
theorem iInf_iSup_of_antitone {ι ι' α : Type*} [Finite ι] [Preorder ι'] [Nonempty ι']
    [IsDirected ι' (· ≤ ·)] [Order.Coframe α] {f : ι → ι' → α} (hf : ∀ i, Antitone (f i)) :
    ⨅ j, ⨆ i, f i j = ⨆ i, ⨅ j, f i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} [Finite ι] [Preorder ι'] [Nonempty ι'] [IsDirected ι' fun x x_1 => x ≤ x_1] [Order.Coframe α] {f : ι → ι' → α} (hf : ∀ (i : ι), Antitone (f i))
Goal: ⨅ j, ⨆ i, f i j = ⨆ i, ⨅ j, f i j
-- Set.iUnion_iInter_of_monotone
theorem iUnion_iInter_of_monotone {ι ι' α : Type*} [Finite ι] [Preorder ι'] [IsDirected ι' (· ≤ ·)]
    [Nonempty ι'] {s : ι → ι' → Set α} (hs : ∀ i, Monotone (s i)) :
    ⋃ j : ι', ⋂ i : ι, s i j = ⋂ i : ι, ⋃ j : ι', s i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} [Finite ι] [Preorder ι'] [IsDirected ι' fun x x_1 => x ≤ x_1] [Nonempty ι'] {s : ι → ι' → Set α} (hs : ∀ (i : ι), Monotone (s i))
Goal: ⋃ j, ⋂ i, s i j = ⋂ i, ⋃ j, s i j
-- Set.iUnion_iInter_of_antitone
theorem iUnion_iInter_of_antitone {ι ι' α : Type*} [Finite ι] [Preorder ι']
    [IsDirected ι' (swap (· ≤ ·))] [Nonempty ι'] {s : ι → ι' → Set α} (hs : ∀ i, Antitone (s i)) :
    ⋃ j : ι', ⋂ i : ι, s i j = ⋂ i : ι, ⋃ j : ι', s i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} [Finite ι] [Preorder ι'] [IsDirected ι' (Function.swap fun x x_1 => x ≤ x_1)] [Nonempty ι'] {s : ι → ι' → Set α} (hs : ∀ (i : ι), Antitone (s i))
Goal: ⋃ j, ⋂ i, s i j = ⋂ i, ⋃ j, s i j
-- Set.iInter_iUnion_of_monotone
theorem iInter_iUnion_of_monotone {ι ι' α : Type*} [Finite ι] [Preorder ι']
    [IsDirected ι' (swap (· ≤ ·))] [Nonempty ι'] {s : ι → ι' → Set α} (hs : ∀ i, Monotone (s i)) :
    ⋂ j : ι', ⋃ i : ι, s i j = ⋃ i : ι, ⋂ j : ι', s i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} [Finite ι] [Preorder ι'] [IsDirected ι' (Function.swap fun x x_1 => x ≤ x_1)] [Nonempty ι'] {s : ι → ι' → Set α} (hs : ∀ (i : ι), Monotone (s i))
Goal: ⋂ j, ⋃ i, s i j = ⋃ i, ⋂ j, s i j
-- Set.iInter_iUnion_of_antitone
theorem iInter_iUnion_of_antitone {ι ι' α : Type*} [Finite ι] [Preorder ι'] [IsDirected ι' (· ≤ ·)]
    [Nonempty ι'] {s : ι → ι' → Set α} (hs : ∀ i, Antitone (s i)) :
    ⋂ j : ι', ⋃ i : ι, s i j = ⋃ i : ι, ⋂ j : ι', s i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} [Finite ι] [Preorder ι'] [IsDirected ι' fun x x_1 => x ≤ x_1] [Nonempty ι'] {s : ι → ι' → Set α} (hs : ∀ (i : ι), Antitone (s i))
Goal: ⋂ j, ⋃ i, s i j = ⋃ i, ⋂ j, s i j
-- Set.iUnion_pi_of_monotone
theorem iUnion_pi_of_monotone {ι ι' : Type*} [LinearOrder ι'] [Nonempty ι'] {α : ι → Type*}
    {I : Set ι} {s : ∀ i, ι' → Set (α i)} (hI : I.Finite) (hs : ∀ i ∈ I, Monotone (s i)) :
    ⋃ j : ι', I.pi (fun i => s i j) = I.pi fun i => ⋃ j, s i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} [LinearOrder ι'] [Nonempty ι'] {α : ι → Type u_3} {I : Set ι} {s : (i : ι) → ι' → Set (α i)} (hI : I.Finite) (hs : ∀ i ∈ I, Monotone (s i))
Goal: (⋃ j, I.pi fun i => s i j) = I.pi fun i => ⋃ j, s i j
-- Set.iUnion_univ_pi_of_monotone
theorem iUnion_univ_pi_of_monotone {ι ι' : Type*} [LinearOrder ι'] [Nonempty ι'] [Finite ι]
    {α : ι → Type*} {s : ∀ i, ι' → Set (α i)} (hs : ∀ i, Monotone (s i)) :
    ⋃ j : ι', pi univ (fun i => s i j) = pi univ fun i => ⋃ j, s i j 
Arguments: {ι : Type u_1} {ι' : Type u_2} [LinearOrder ι'] [Nonempty ι'] [Finite ι] {α : ι → Type u_3} {s : (i : ι) → ι' → Set (α i)} (hs : ∀ (i : ι), Monotone (s i))
Goal: (⋃ j, Set.univ.pi fun i => s i j) = Set.univ.pi fun i => ⋃ j, s i j
-- Set.finite_range_findGreatest
theorem finite_range_findGreatest {P : α → ℕ → Prop} [∀ x, DecidablePred (P x)] {b : ℕ} :
    (range fun x => Nat.findGreatest (P x) b).Finite 
Arguments: {α : Type u} {P : α → ℕ → Prop} [(x : α) → DecidablePred (P x)] {b : ℕ}
Goal: (Set.range fun x => Nat.findGreatest (P x) b).Finite
-- Set.Finite.exists_maximal_wrt
theorem Finite.exists_maximal_wrt [PartialOrder β] (f : α → β) (s : Set α) (h : s.Finite)
    (hs : s.Nonempty) : ∃ a ∈ s, ∀ a' ∈ s, f a ≤ f a' → f a = f a' 
Arguments: {α : Type u} {β : Type v} [PartialOrder β] (f : α → β) (s : Set α) (h : s.Finite) (hs : s.Nonempty)
Goal: ∃ a ∈ s, ∀ a' ∈ s, f a ≤ f a' → f a = f a'
-- Set.Finite.exists_maximal_wrt'
theorem Finite.exists_maximal_wrt' [PartialOrder β] (f : α → β) (s : Set α) (h : (f '' s).Finite)
    (hs : s.Nonempty) : (∃ a ∈ s, ∀ (a' : α), a' ∈ s → f a ≤ f a' → f a = f a') 
Arguments: {α : Type u} {β : Type v} [PartialOrder β] (f : α → β) (s : Set α) (h : (f '' s).Finite) (hs : s.Nonempty)
Goal: ∃ a ∈ s, ∀ a' ∈ s, f a ≤ f a' → f a = f a'
-- Set.Finite.exists_minimal_wrt
theorem Finite.exists_minimal_wrt [PartialOrder β] (f : α → β) (s : Set α) (h : s.Finite)
    (hs : s.Nonempty) : ∃ a ∈ s, ∀ a' ∈ s, f a' ≤ f a → f a = f a' 
Arguments: {α : Type u} {β : Type v} [PartialOrder β] (f : α → β) (s : Set α) (h : s.Finite) (hs : s.Nonempty)
Goal: ∃ a ∈ s, ∀ a' ∈ s, f a' ≤ f a → f a = f a'
-- Set.Finite.exists_minimal_wrt'
lemma Finite.exists_minimal_wrt' [PartialOrder β] (f : α → β) (s : Set α) (h : (f '' s).Finite)
    (hs : s.Nonempty) : (∃ a ∈ s, ∀ (a' : α), a' ∈ s → f a' ≤ f a → f a = f a') 
Arguments: {α : Type u} {β : Type v} [PartialOrder β] (f : α → β) (s : Set α) (h : (f '' s).Finite) (hs : s.Nonempty)
Goal: ∃ a ∈ s, ∀ a' ∈ s, f a' ≤ f a → f a = f a'
-- Set.Finite.bddAbove
protected theorem Finite.bddAbove (hs : s.Finite) : BddAbove s 
Arguments: {α : Type u} [Preorder α] [IsDirected α fun x x_1 => x ≤ x_1] [Nonempty α] {s : Set α} (hs : s.Finite)
Goal: BddAbove s
-- Set.Finite.bddAbove_biUnion
theorem Finite.bddAbove_biUnion {I : Set β} {S : β → Set α} (H : I.Finite) :
    BddAbove (⋃ i ∈ I, S i) ↔ ∀ i ∈ I, BddAbove (S i) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [IsDirected α fun x x_1 => x ≤ x_1] [Nonempty α] {I : Set β} {S : β → Set α} (H : I.Finite)
Goal: BddAbove (⋃ i ∈ I, S i) ↔ ∀ i ∈ I, BddAbove (S i)
-- Set.infinite_of_not_bddAbove
theorem infinite_of_not_bddAbove : ¬BddAbove s → s.Infinite 
Arguments: {α : Type u} [Preorder α] [IsDirected α fun x x_1 => x ≤ x_1] [Nonempty α] {s : Set α}
Goal: ¬BddAbove s → s.Infinite
-- Set.Finite.bddBelow
protected theorem Finite.bddBelow (hs : s.Finite) : BddBelow s 
Arguments: {α : Type u} [Preorder α] [IsDirected α fun x x_1 => x ≥ x_1] [Nonempty α] {s : Set α} (hs : s.Finite)
Goal: BddBelow s
-- Set.Finite.bddBelow_biUnion
theorem Finite.bddBelow_biUnion {I : Set β} {S : β → Set α} (H : I.Finite) :
    BddBelow (⋃ i ∈ I, S i) ↔ ∀ i ∈ I, BddBelow (S i) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [IsDirected α fun x x_1 => x ≥ x_1] [Nonempty α] {I : Set β} {S : β → Set α} (H : I.Finite)
Goal: BddBelow (⋃ i ∈ I, S i) ↔ ∀ i ∈ I, BddBelow (S i)
-- Set.infinite_of_not_bddBelow
theorem infinite_of_not_bddBelow : ¬BddBelow s → s.Infinite 
Arguments: {α : Type u} [Preorder α] [IsDirected α fun x x_1 => x ≥ x_1] [Nonempty α] {s : Set α}
Goal: ¬BddBelow s → s.Infinite
-- Finset.exists_card_eq
lemma exists_card_eq [Infinite α] : ∀ n : ℕ, ∃ s : Finset α, s.card = n
  
Arguments: {α : Type u} [Infinite α] (n : ℕ)
Goal: ∃ s, s.card = n
-- Finset.bddAbove
protected theorem bddAbove [SemilatticeSup α] [Nonempty α] (s : Finset α) : BddAbove (↑s : Set α) 
Arguments: {α : Type u} [SemilatticeSup α] [Nonempty α] (s : Finset α)
Goal: BddAbove ↑s
-- Finset.bddBelow
protected theorem bddBelow [SemilatticeInf α] [Nonempty α] (s : Finset α) : BddBelow (↑s : Set α) 
Arguments: {α : Type u} [SemilatticeInf α] [Nonempty α] (s : Finset α)
Goal: BddBelow ↑s
-- Finite.of_forall_not_lt_lt
lemma Finite.of_forall_not_lt_lt (h : ∀ ⦃x y z : α⦄, x < y → y < z → False) : Finite α 
Arguments: {α : Type u} [LinearOrder α] (h : ∀ ⦃x y z : α⦄, x < y → y < z → False)
Goal: Finite α
-- Set.finite_of_forall_not_lt_lt
lemma Set.finite_of_forall_not_lt_lt (h : ∀ x ∈ s, ∀ y ∈ s, ∀ z ∈ s, x < y → y < z → False) :
    Set.Finite s 
Arguments: {α : Type u} [LinearOrder α] {s : Set α} (h : ∀ x ∈ s, ∀ y ∈ s, ∀ z ∈ s, x < y → y < z → False)
Goal: s.Finite
-- Set.finite_diff_iUnion_Ioo
lemma Set.finite_diff_iUnion_Ioo (s : Set α) : (s \ ⋃ (x ∈ s) (y ∈ s), Ioo x y).Finite 
Arguments: {α : Type u} [LinearOrder α] (s : Set α)
Goal: (s \ ⋃ x ∈ s, ⋃ y ∈ s, Set.Ioo x y).Finite
-- Set.finite_diff_iUnion_Ioo'
lemma Set.finite_diff_iUnion_Ioo' (s : Set α) : (s \ ⋃ x : s × s, Ioo x.1 x.2).Finite 
Arguments: {α : Type u} [LinearOrder α] (s : Set α)
Goal: (s \ ⋃ x, Set.Ioo ↑x.1 ↑x.2).Finite
-- Directed.exists_mem_subset_of_finset_subset_biUnion
lemma Directed.exists_mem_subset_of_finset_subset_biUnion {α ι : Type*} [Nonempty ι]
    {f : ι → Set α} (h : Directed (· ⊆ ·) f) {s : Finset α} (hs : (s : Set α) ⊆ ⋃ i, f i) :
    ∃ i, (s : Set α) ⊆ f i 
Arguments: {α : Type u_1} {ι : Type u_2} [Nonempty ι] {f : ι → Set α} (h : Directed (fun x x_1 => x ⊆ x_1) f) {s : Finset α} (hs : ↑s ⊆ ⋃ i, f i)
Goal: ∃ i, ↑s ⊆ f i
-- DirectedOn.exists_mem_subset_of_finset_subset_biUnion
theorem DirectedOn.exists_mem_subset_of_finset_subset_biUnion {α ι : Type*} {f : ι → Set α}
    {c : Set ι} (hn : c.Nonempty) (hc : DirectedOn (fun i j => f i ⊆ f j) c) {s : Finset α}
    (hs : (s : Set α) ⊆ ⋃ i ∈ c, f i) : ∃ i ∈ c, (s : Set α) ⊆ f i 
Arguments: {α : Type u_1} {ι : Type u_2} {f : ι → Set α} {c : Set ι} (hn : c.Nonempty) (hc : DirectedOn (fun i j => f i ⊆ f j) c) {s : Finset α} (hs : ↑s ⊆ ⋃ i ∈ c, f i)
Goal: ∃ i ∈ c, ↑s ⊆ f i
-- Multiset.Icc_eq
theorem Icc_eq :
    Finset.Icc s t = (Finset.Icc (toDFinsupp s) (toDFinsupp t)).map
      Multiset.equivDFinsupp.toEquiv.symm.toEmbedding 
Arguments: {α : Type u_1} [DecidableEq α] (s t : Multiset α)
Goal: Finset.Icc s t =
  Finset.map Multiset.equivDFinsupp.symm.toEmbedding (Finset.Icc (Multiset.toDFinsupp s) (Multiset.toDFinsupp t))
-- Multiset.uIcc_eq
theorem uIcc_eq :
    uIcc s t =
      (uIcc (toDFinsupp s) (toDFinsupp t)).map Multiset.equivDFinsupp.toEquiv.symm.toEmbedding 
Arguments: {α : Type u_1} [DecidableEq α] (s t : Multiset α)
Goal: Finset.uIcc s t =
  Finset.map Multiset.equivDFinsupp.symm.toEmbedding (Finset.uIcc (Multiset.toDFinsupp s) (Multiset.toDFinsupp t))
-- Multiset.card_Icc
theorem card_Icc :
    (Finset.Icc s t).card = ∏ i ∈ s.toFinset ∪ t.toFinset, (t.count i + 1 - s.count i) 
Arguments: {α : Type u_1} [DecidableEq α] (s t : Multiset α)
Goal: (Finset.Icc s t).card = ∏ i ∈ s.toFinset ∪ t.toFinset, (Multiset.count i t + 1 - Multiset.count i s)
-- Multiset.card_Ico
theorem card_Ico :
    (Finset.Ico s t).card = ∏ i ∈ s.toFinset ∪ t.toFinset, (t.count i + 1 - s.count i) - 1 
Arguments: {α : Type u_1} [DecidableEq α] (s t : Multiset α)
Goal: (Finset.Ico s t).card = ∏ i ∈ s.toFinset ∪ t.toFinset, (Multiset.count i t + 1 - Multiset.count i s) - 1
-- Multiset.card_Ioc
theorem card_Ioc :
    (Finset.Ioc s t).card = ∏ i ∈ s.toFinset ∪ t.toFinset, (t.count i + 1 - s.count i) - 1 
Arguments: {α : Type u_1} [DecidableEq α] (s t : Multiset α)
Goal: (Finset.Ioc s t).card = ∏ i ∈ s.toFinset ∪ t.toFinset, (Multiset.count i t + 1 - Multiset.count i s) - 1
-- Multiset.card_Ioo
theorem card_Ioo :
    (Finset.Ioo s t).card = ∏ i ∈ s.toFinset ∪ t.toFinset, (t.count i + 1 - s.count i) - 2 
Arguments: {α : Type u_1} [DecidableEq α] (s t : Multiset α)
Goal: (Finset.Ioo s t).card = ∏ i ∈ s.toFinset ∪ t.toFinset, (Multiset.count i t + 1 - Multiset.count i s) - 2
-- Multiset.card_uIcc
theorem card_uIcc :
    (uIcc s t).card = ∏ i ∈ s.toFinset ∪ t.toFinset, ((t.count i - s.count i : ℤ).natAbs + 1) 
Arguments: {α : Type u_1} [DecidableEq α] (s t : Multiset α)
Goal: (Finset.uIcc s t).card = ∏ i ∈ s.toFinset ∪ t.toFinset, ((↑(Multiset.count i t) - ↑(Multiset.count i s)).natAbs + 1)
-- Multiset.card_Iic
theorem card_Iic : (Finset.Iic s).card = ∏ i ∈ s.toFinset, (s.count i + 1) 
Arguments: {α : Type u_1} [DecidableEq α] (s : Multiset α)
Goal: (Finset.Iic s).card = ∏ i ∈ s.toFinset, (Multiset.count i s + 1)
-- Set.mem_iUnion₂
theorem mem_iUnion₂ {x : γ} {s : ∀ i, κ i → Set γ} : (x ∈ ⋃ (i) (j), s i j) ↔ ∃ i j, x ∈ s i j 
Arguments: {γ : Type u_3} {ι : Sort u_4} {κ : ι → Sort u_7} {x : γ} {s : (i : ι) → κ i → Set γ}
Goal: x ∈ ⋃ i, ⋃ j, s i j ↔ ∃ i j, x ∈ s i j
-- Set.mem_iInter₂
theorem mem_iInter₂ {x : γ} {s : ∀ i, κ i → Set γ} : (x ∈ ⋂ (i) (j), s i j) ↔ ∀ i j, x ∈ s i j 
Arguments: {γ : Type u_3} {ι : Sort u_4} {κ : ι → Sort u_7} {x : γ} {s : (i : ι) → κ i → Set γ}
Goal: x ∈ ⋂ i, ⋂ j, s i j ↔ ∀ (i : ι) (j : κ i), x ∈ s i j
-- Set.mem_iUnion_of_mem
theorem mem_iUnion_of_mem {s : ι → Set α} {a : α} (i : ι) (ha : a ∈ s i) : a ∈ ⋃ i, s i 
Arguments: {α : Type u_1} {ι : Sort u_4} {s : ι → Set α} {a : α} (i : ι) (ha : a ∈ s i)
Goal: a ∈ ⋃ i, s i
-- Set.mem_iUnion₂_of_mem
theorem mem_iUnion₂_of_mem {s : ∀ i, κ i → Set α} {a : α} {i : ι} (j : κ i) (ha : a ∈ s i j) :
    a ∈ ⋃ (i) (j), s i j 
Arguments: {α : Type u_1} {ι : Sort u_4} {κ : ι → Sort u_7} {s : (i : ι) → κ i → Set α} {a : α} {i : ι} (j : κ i) (ha : a ∈ s i j)
Goal: a ∈ ⋃ i, ⋃ j, s i j
-- Set.mem_iInter_of_mem
theorem mem_iInter_of_mem {s : ι → Set α} {a : α} (h : ∀ i, a ∈ s i) : a ∈ ⋂ i, s i 
Arguments: {α : Type u_1} {ι : Sort u_4} {s : ι → Set α} {a : α} (h : ∀ (i : ι), a ∈ s i)
Goal: a ∈ ⋂ i, s i
-- Set.mem_iInter₂_of_mem
theorem mem_iInter₂_of_mem {s : ∀ i, κ i → Set α} {a : α} (h : ∀ i j, a ∈ s i j) :
    a ∈ ⋂ (i) (j), s i j 
Arguments: {α : Type u_1} {ι : Sort u_4} {κ : ι → Sort u_7} {s : (i : ι) → κ i → Set α} {a : α} (h : ∀ (i : ι) (j : κ i), a ∈ s i j)
Goal: a ∈ ⋂ i, ⋂ j, s i j
-- Set.image_preimage
protected theorem image_preimage : GaloisConnection (image f) (preimage f) 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β}
Goal: GaloisConnection (Set.image f) (Set.preimage f)
-- Set.preimage_kernImage
protected theorem preimage_kernImage : GaloisConnection (preimage f) (kernImage f) 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β}
Goal: GaloisConnection (Set.preimage f) (Set.kernImage f)
-- Set.kernImage_mono
lemma kernImage_mono : Monotone (kernImage f) 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β}
Goal: Monotone (Set.kernImage f)
-- Set.kernImage_eq_compl
lemma kernImage_eq_compl {s : Set α} : kernImage f s = (f '' sᶜ)ᶜ 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α}
Goal: Set.kernImage f s = (f '' sᶜ)ᶜ
-- Set.kernImage_compl
lemma kernImage_compl {s : Set α} : kernImage f (sᶜ) = (f '' s)ᶜ 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α}
Goal: Set.kernImage f sᶜ = (f '' s)ᶜ
-- Set.kernImage_empty
lemma kernImage_empty : kernImage f ∅ = (range f)ᶜ 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β}
Goal: Set.kernImage f ∅ = (Set.range f)ᶜ
-- Set.kernImage_preimage_eq_iff
lemma kernImage_preimage_eq_iff {s : Set β} : kernImage f (f ⁻¹' s) = s ↔ (range f)ᶜ ⊆ s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set β}
Goal: Set.kernImage f (f ⁻¹' s) = s ↔ (Set.range f)ᶜ ⊆ s
-- Set.compl_range_subset_kernImage
lemma compl_range_subset_kernImage {s : Set α} : (range f)ᶜ ⊆ kernImage f s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α}
Goal: (Set.range f)ᶜ ⊆ Set.kernImage f s
-- Set.kernImage_union_preimage
lemma kernImage_union_preimage {s : Set α} {t : Set β} :
    kernImage f (s ∪ f ⁻¹' t) = kernImage f s ∪ t 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α} {t : Set β}
Goal: Set.kernImage f (s ∪ f ⁻¹' t) = Set.kernImage f s ∪ t
-- Set.kernImage_preimage_union
lemma kernImage_preimage_union {s : Set α} {t : Set β} :
    kernImage f (f ⁻¹' t ∪ s) = t ∪ kernImage f s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α} {t : Set β}
Goal: Set.kernImage f (f ⁻¹' t ∪ s) = t ∪ Set.kernImage f s
-- Set.iUnion_congr_Prop
@[congr]
theorem iUnion_congr_Prop {p q : Prop} {f₁ : p → Set α} {f₂ : q → Set α} (pq : p ↔ q)
    (f : ∀ x, f₁ (pq.mpr x) = f₂ x) : iUnion f₁ = iUnion f₂ 
Arguments: {α : Type u_1} {p q : Prop} {f₁ : p → Set α} {f₂ : q → Set α} (pq : p ↔ q) (f : ∀ (x : q), f₁ ⋯ = f₂ x)
Goal: Set.iUnion f₁ = Set.iUnion f₂
-- Set.iInter_congr_Prop
@[congr]
theorem iInter_congr_Prop {p q : Prop} {f₁ : p → Set α} {f₂ : q → Set α} (pq : p ↔ q)
    (f : ∀ x, f₁ (pq.mpr x) = f₂ x) : iInter f₁ = iInter f₂ 
Arguments: {α : Type u_1} {p q : Prop} {f₁ : p → Set α} {f₂ : q → Set α} (pq : p ↔ q) (f : ∀ (x : q), f₁ ⋯ = f₂ x)
Goal: Set.iInter f₁ = Set.iInter f₂
-- Set.iUnion_plift_up
theorem iUnion_plift_up (f : PLift ι → Set α) : ⋃ i, f (PLift.up i) = ⋃ i, f i 
Arguments: {α : Type u_1} {ι : Sort u_4} (f : PLift ι → Set α)
Goal: ⋃ i, f { down := i } = ⋃ i, f i
-- Set.iUnion_plift_down
theorem iUnion_plift_down (f : ι → Set α) : ⋃ i, f (PLift.down i) = ⋃ i, f i 
Arguments: {α : Type u_1} {ι : Sort u_4} (f : ι → Set α)
Goal: ⋃ i, f i.down = ⋃ i, f i
-- Set.iInter_plift_up
theorem iInter_plift_up (f : PLift ι → Set α) : ⋂ i, f (PLift.up i) = ⋂ i, f i 
Arguments: {α : Type u_1} {ι : Sort u_4} (f : PLift ι → Set α)
Goal: ⋂ i, f { down := i } = ⋂ i, f i
-- Set.iInter_plift_down
theorem iInter_plift_down (f : ι → Set α) : ⋂ i, f (PLift.down i) = ⋂ i, f i 
Arguments: {α : Type u_1} {ι : Sort u_4} (f : ι → Set α)
Goal: ⋂ i, f i.down = ⋂ i, f i
-- Set.iUnion_eq_if
theorem iUnion_eq_if {p : Prop} [Decidable p] (s : Set α) : ⋃ _ : p, s = if p then s else ∅ 
Arguments: {α : Type u_1} {p : Prop} [Decidable p] (s : Set α)
Goal: ⋃ (_ : p), s = if p then s else ∅
-- Set.iUnion_eq_dif
theorem iUnion_eq_dif {p : Prop} [Decidable p] (s : p → Set α) :
    ⋃ h : p, s h = if h : p then s h else ∅ 
Arguments: {α : Type u_1} {p : Prop} [Decidable p] (s : p → Set α)
Goal: ⋃ (h : p), s h = if h : p then s h else ∅
-- Set.iInter_eq_if
theorem iInter_eq_if {p : Prop} [Decidable p] (s : Set α) : ⋂ _ : p, s = if p then s else univ 
Arguments: {α : Type u_1} {p : Prop} [Decidable p] (s : Set α)
Goal: ⋂ (_ : p), s = if p then s else Set.univ
-- Set.iInf_eq_dif
theorem iInf_eq_dif {p : Prop} [Decidable p] (s : p → Set α) :
    ⋂ h : p, s h = if h : p then s h else univ 
Arguments: {α : Type u_1} {p : Prop} [Decidable p] (s : p → Set α)
Goal: ⋂ (h : p), s h = if h : p then s h else Set.univ
-- Set.exists_set_mem_of_union_eq_top
theorem exists_set_mem_of_union_eq_top {ι : Type*} (t : Set ι) (s : ι → Set β)
    (w : ⋃ i ∈ t, s i = ⊤) (x : β) : ∃ i ∈ t, x ∈ s i 
Arguments: {β : Type u_2} {ι : Type u_11} (t : Set ι) (s : ι → Set β) (w : ⋃ i ∈ t, s i = ⊤) (x : β)
Goal: ∃ i ∈ t, x ∈ s i
-- Set.nonempty_of_union_eq_top_of_nonempty
theorem nonempty_of_union_eq_top_of_nonempty {ι : Type*} (t : Set ι) (s : ι → Set α)
    (H : Nonempty α) (w : ⋃ i ∈ t, s i = ⊤) : t.Nonempty 
Arguments: {α : Type u_1} {ι : Type u_11} (t : Set ι) (s : ι → Set α) (H : Nonempty α) (w : ⋃ i ∈ t, s i = ⊤)
Goal: t.Nonempty
-- Set.nonempty_of_nonempty_iUnion
theorem nonempty_of_nonempty_iUnion
    {s : ι → Set α} (h_Union : (⋃ i, s i).Nonempty) : Nonempty ι 
Arguments: {α : Type u_1} {ι : Sort u_4} {s : ι → Set α} (h_Union : (⋃ i, s i).Nonempty)
Goal: Nonempty ι
-- Set.nonempty_of_nonempty_iUnion_eq_univ
theorem nonempty_of_nonempty_iUnion_eq_univ
    {s : ι → Set α} [Nonempty α] (h_Union : ⋃ i, s i = univ) : Nonempty ι 
Arguments: {α : Type u_1} {ι : Sort u_4} {s : ι → Set α} [Nonempty α] (h_Union : ⋃ i, s i = Set.univ)
Goal: Nonempty ι
-- Set.setOf_exists
theorem setOf_exists (p : ι → β → Prop) : { x | ∃ i, p i x } = ⋃ i, { x | p i x } 
Arguments: {β : Type u_2} {ι : Sort u_4} (p : ι → β → Prop)
Goal: {x | ∃ i, p i x} = ⋃ i, {x | p i x}
-- Set.setOf_forall
theorem setOf_forall (p : ι → β → Prop) : { x | ∀ i, p i x } = ⋂ i, { x | p i x } 
Arguments: {β : Type u_2} {ι : Sort u_4} (p : ι → β → Prop)
Goal: {x | ∀ (i : ι), p i x} = ⋂ i, {x | p i x}
-- Set.iUnion_subset
theorem iUnion_subset {s : ι → Set α} {t : Set α} (h : ∀ i, s i ⊆ t) : ⋃ i, s i ⊆ t 
Arguments: {α : Type u_1} {ι : Sort u_4} {s : ι → Set α} {t : Set α} (h : ∀ (i : ι), s i ⊆ t)
Goal: ⋃ i, s i ⊆ t
-- Set.iUnion₂_subset
theorem iUnion₂_subset {s : ∀ i, κ i → Set α} {t : Set α} (h : ∀ i j, s i j ⊆ t) :
    ⋃ (i) (j), s i j ⊆ t 
Arguments: {α : Type u_1} {ι : Sort u_4} {κ : ι → Sort u_7} {s : (i : ι) → κ i → Set α} {t : Set α} (h : ∀ (i : ι) (j : κ i), s i j ⊆ t)
Goal: ⋃ i, ⋃ j, s i j ⊆ t
-- Set.subset_iInter
theorem subset_iInter {t : Set β} {s : ι → Set β} (h : ∀ i, t ⊆ s i) : t ⊆ ⋂ i, s i 
Arguments: {β : Type u_2} {ι : Sort u_4} {t : Set β} {s : ι → Set β} (h : ∀ (i : ι), t ⊆ s i)
Goal: t ⊆ ⋂ i, s i
-- Set.subset_iInter₂
theorem subset_iInter₂ {s : Set α} {t : ∀ i, κ i → Set α} (h : ∀ i j, s ⊆ t i j) :
    s ⊆ ⋂ (i) (j), t i j 
Arguments: {α : Type u_1} {ι : Sort u_4} {κ : ι → Sort u_7} {s : Set α} {t : (i : ι) → κ i → Set α} (h : ∀ (i : ι) (j : κ i), s ⊆ t i j)
Goal: s ⊆ ⋂ i, ⋂ j, t i j
-- Set.iUnion_subset_iff
@[simp]
theorem iUnion_subset_iff {s : ι → Set α} {t : Set α} : ⋃ i, s i ⊆ t ↔ ∀ i, s i ⊆ t 
Arguments: {α : Type u_1} {ι : Sort u_4} {s : ι → Set α} {t : Set α}
Goal: ⋃ i, s i ⊆ t ↔ ∀ (i : ι), s i ⊆ t
-- Set.iUnion₂_subset_iff
theorem iUnion₂_subset_iff {s : ∀ i, κ i → Set α} {t : Set α} :
    ⋃ (i) (j), s i j ⊆ t ↔ ∀ i j, s i j ⊆ t 
Arguments: {α : Type u_1} {ι : Sort u_4} {κ : ι → Sort u_7} {s : (i : ι) → κ i → Set α} {t : Set α}
Goal: ⋃ i, ⋃ j, s i j ⊆ t ↔ ∀ (i : ι) (j : κ i), s i j ⊆ t
-- Set.subset_iInter_iff
@[simp]
theorem subset_iInter_iff {s : Set α} {t : ι → Set α} : (s ⊆ ⋂ i, t i) ↔ ∀ i, s ⊆ t i 
Arguments: {α : Type u_1} {ι : Sort u_4} {s : Set α} {t : ι → Set α}
Goal: s ⊆ ⋂ i, t i ↔ ∀ (i : ι), s ⊆ t i
-- Set.subset_iInter₂_iff
theorem subset_iInter₂_iff {s : Set α} {t : ∀ i, κ i → Set α} :
    (s ⊆ ⋂ (i) (j), t i j) ↔ ∀ i j, s ⊆ t i j 
Arguments: {α : Type u_1} {ι : Sort u_4} {κ : ι → Sort u_7} {s : Set α} {t : (i : ι) → κ i → Set α}
Goal: s ⊆ ⋂ i, ⋂ j, t i j ↔ ∀ (i : ι) (j : κ i), s ⊆ t i j
-- Set.subset_iUnion
theorem subset_iUnion : ∀ (s : ι → Set β) (i : ι), s i ⊆ ⋃ i, s i 
Arguments: {β : Type u_2} {ι : Sort u_4} (s : ι → Set β) (i : ι)
Goal: s i ⊆ ⋃ i, s i