ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Set.mem_image_iff_of_inverse
theorem mem_image_iff_of_inverse {f : α → β} {g : β → α} {b : β} {s : Set α} (h₁ : LeftInverse g f)
    (h₂ : RightInverse g f) : b ∈ f '' s ↔ g b ∈ s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {g : β → α} {b : β} {s : Set α} (h₁ : Function.LeftInverse g f) (h₂ : Function.RightInverse g f)
Goal: b ∈ f '' s ↔ g b ∈ s
-- Set.image_compl_subset
theorem image_compl_subset {f : α → β} {s : Set α} (H : Injective f) : f '' sᶜ ⊆ (f '' s)ᶜ 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α} (H : Function.Injective f)
Goal: f '' sᶜ ⊆ (f '' s)ᶜ
-- Set.subset_image_compl
theorem subset_image_compl {f : α → β} {s : Set α} (H : Surjective f) : (f '' s)ᶜ ⊆ f '' sᶜ 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α} (H : Function.Surjective f)
Goal: (f '' s)ᶜ ⊆ f '' sᶜ
-- Set.image_compl_eq
theorem image_compl_eq {f : α → β} {s : Set α} (H : Bijective f) : f '' sᶜ = (f '' s)ᶜ 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α} (H : Function.Bijective f)
Goal: f '' sᶜ = (f '' s)ᶜ
-- Set.subset_image_diff
theorem subset_image_diff (f : α → β) (s t : Set α) : f '' s \ f '' t ⊆ f '' (s \ t) 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) (s t : Set α)
Goal: f '' s \ f '' t ⊆ f '' (s \ t)
-- Set.subset_image_symmDiff
theorem subset_image_symmDiff : (f '' s) ∆ (f '' t) ⊆ f '' s ∆ t 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s t : Set α}
Goal: symmDiff (f '' s) (f '' t) ⊆ f '' symmDiff s t
-- Set.image_diff
theorem image_diff {f : α → β} (hf : Injective f) (s t : Set α) : f '' (s \ t) = f '' s \ f '' t 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} (hf : Function.Injective f) (s t : Set α)
Goal: f '' (s \ t) = f '' s \ f '' t
-- Set.image_symmDiff
theorem image_symmDiff (hf : Injective f) (s t : Set α) : f '' s ∆ t = (f '' s) ∆ (f '' t) 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} (hf : Function.Injective f) (s t : Set α)
Goal: f '' symmDiff s t = symmDiff (f '' s) (f '' t)
-- Set.Nonempty.image
theorem Nonempty.image (f : α → β) {s : Set α} : s.Nonempty → (f '' s).Nonempty
  
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) {s : Set α}
Goal: s.Nonempty → (f '' s).Nonempty
-- Set.Nonempty.of_image
theorem Nonempty.of_image {f : α → β} {s : Set α} : (f '' s).Nonempty → s.Nonempty
  
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α}
Goal: (f '' s).Nonempty → s.Nonempty
-- Set.image_nonempty
@[simp]
theorem image_nonempty {f : α → β} {s : Set α} : (f '' s).Nonempty ↔ s.Nonempty 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α}
Goal: (f '' s).Nonempty ↔ s.Nonempty
-- Set.Nonempty.preimage
theorem Nonempty.preimage {s : Set β} (hs : s.Nonempty) {f : α → β} (hf : Surjective f) :
    (f ⁻¹' s).Nonempty 
Arguments: {α : Type u_1} {β : Type u_2} {s : Set β} (hs : s.Nonempty) {f : α → β} (hf : Function.Surjective f)
Goal: (f ⁻¹' s).Nonempty
-- Set.image_subset_iff
@[simp]
theorem image_subset_iff {s : Set α} {t : Set β} {f : α → β} : f '' s ⊆ t ↔ s ⊆ f ⁻¹' t 
Arguments: {α : Type u_1} {β : Type u_2} {s : Set α} {t : Set β} {f : α → β}
Goal: f '' s ⊆ t ↔ s ⊆ f ⁻¹' t
-- Set.image_preimage_subset
theorem image_preimage_subset (f : α → β) (s : Set β) : f '' (f ⁻¹' s) ⊆ s 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) (s : Set β)
Goal: f '' (f ⁻¹' s) ⊆ s
-- Set.subset_preimage_image
theorem subset_preimage_image (f : α → β) (s : Set α) : s ⊆ f ⁻¹' (f '' s) 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) (s : Set α)
Goal: s ⊆ f ⁻¹' (f '' s)
-- Set.preimage_image_eq
@[simp]
theorem preimage_image_eq {f : α → β} (s : Set α) (h : Injective f) : f ⁻¹' (f '' s) = s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} (s : Set α) (h : Function.Injective f)
Goal: f ⁻¹' (f '' s) = s
-- Set.image_preimage_eq
@[simp]
theorem image_preimage_eq {f : α → β} (s : Set β) (h : Surjective f) : f '' (f ⁻¹' s) = s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} (s : Set β) (h : Function.Surjective f)
Goal: f '' (f ⁻¹' s) = s
-- Set.Nonempty.subset_preimage_const
@[simp]
theorem Nonempty.subset_preimage_const {s : Set α} (hs : Set.Nonempty s) (t : Set β) (a : β) :
    s ⊆ (fun _ => a) ⁻¹' t ↔ a ∈ t 
Arguments: {α : Type u_1} {β : Type u_2} {s : Set α} (hs : s.Nonempty) (t : Set β) (a : β)
Goal: s ⊆ (fun x => a) ⁻¹' t ↔ a ∈ t
-- Set.preimage_eq_preimage
@[simp]
theorem preimage_eq_preimage {f : β → α} (hf : Surjective f) : f ⁻¹' s = f ⁻¹' t ↔ s = t 
Arguments: {α : Type u_1} {β : Type u_2} {s t : Set α} {f : β → α} (hf : Function.Surjective f)
Goal: f ⁻¹' s = f ⁻¹' t ↔ s = t
-- Set.image_inter_preimage
theorem image_inter_preimage (f : α → β) (s : Set α) (t : Set β) :
    f '' (s ∩ f ⁻¹' t) = f '' s ∩ t 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) (s : Set α) (t : Set β)
Goal: f '' (s ∩ f ⁻¹' t) = f '' s ∩ t
-- Set.image_preimage_inter
theorem image_preimage_inter (f : α → β) (s : Set α) (t : Set β) :
    f '' (f ⁻¹' t ∩ s) = t ∩ f '' s 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) (s : Set α) (t : Set β)
Goal: f '' (f ⁻¹' t ∩ s) = t ∩ f '' s
-- Set.image_inter_nonempty_iff
@[simp]
theorem image_inter_nonempty_iff {f : α → β} {s : Set α} {t : Set β} :
    (f '' s ∩ t).Nonempty ↔ (s ∩ f ⁻¹' t).Nonempty 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α} {t : Set β}
Goal: (f '' s ∩ t).Nonempty ↔ (s ∩ f ⁻¹' t).Nonempty
-- Set.image_diff_preimage
theorem image_diff_preimage {f : α → β} {s : Set α} {t : Set β} :
    f '' (s \ f ⁻¹' t) = f '' s \ t 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α} {t : Set β}
Goal: f '' (s \ f ⁻¹' t) = f '' s \ t
-- Set.compl_image
theorem compl_image : image (compl : Set α → Set α) = preimage compl 
Arguments: {α : Type u_1}
Goal: Set.image compl = Set.preimage compl
-- Set.compl_image_set_of
theorem compl_image_set_of {p : Set α → Prop} : compl '' { s | p s } = { s | p sᶜ } 
Arguments: {α : Type u_1} {p : Set α → Prop}
Goal: compl '' {s | p s} = {s | p sᶜ}
-- Set.inter_preimage_subset
theorem inter_preimage_subset (s : Set α) (t : Set β) (f : α → β) :
    s ∩ f ⁻¹' t ⊆ f ⁻¹' (f '' s ∩ t) 
Arguments: {α : Type u_1} {β : Type u_2} (s : Set α) (t : Set β) (f : α → β)
Goal: s ∩ f ⁻¹' t ⊆ f ⁻¹' (f '' s ∩ t)
-- Set.union_preimage_subset
theorem union_preimage_subset (s : Set α) (t : Set β) (f : α → β) :
    s ∪ f ⁻¹' t ⊆ f ⁻¹' (f '' s ∪ t) 
Arguments: {α : Type u_1} {β : Type u_2} (s : Set α) (t : Set β) (f : α → β)
Goal: s ∪ f ⁻¹' t ⊆ f ⁻¹' (f '' s ∪ t)
-- Set.subset_image_union
theorem subset_image_union (f : α → β) (s : Set α) (t : Set β) : f '' (s ∪ f ⁻¹' t) ⊆ f '' s ∪ t 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) (s : Set α) (t : Set β)
Goal: f '' (s ∪ f ⁻¹' t) ⊆ f '' s ∪ t
-- Set.preimage_subset_iff
theorem preimage_subset_iff {A : Set α} {B : Set β} {f : α → β} :
    f ⁻¹' B ⊆ A ↔ ∀ a : α, f a ∈ B → a ∈ A 
Arguments: {α : Type u_1} {β : Type u_2} {A : Set α} {B : Set β} {f : α → β}
Goal: f ⁻¹' B ⊆ A ↔ ∀ (a : α), f a ∈ B → a ∈ A
-- Set.image_eq_image
theorem image_eq_image {f : α → β} (hf : Injective f) : f '' s = f '' t ↔ s = t 
Arguments: {α : Type u_1} {β : Type u_2} {s t : Set α} {f : α → β} (hf : Function.Injective f)
Goal: f '' s = f '' t ↔ s = t
-- Set.subset_image_iff
theorem subset_image_iff {t : Set β} :
    t ⊆ f '' s ↔ ∃ u, u ⊆ s ∧ f '' u = t 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α} {t : Set β}
Goal: t ⊆ f '' s ↔ ∃ u ⊆ s, f '' u = t
-- Set.exists_subset_image_iff
@[simp]
lemma exists_subset_image_iff {p : Set β → Prop} : (∃ t ⊆ f '' s, p t) ↔ ∃ t ⊆ s, p (f '' t) 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α} {p : Set β → Prop}
Goal: (∃ t ⊆ f '' s, p t) ↔ ∃ t ⊆ s, p (f '' t)
-- Set.forall_subset_image_iff
@[simp]
lemma forall_subset_image_iff {p : Set β → Prop} : (∀ t ⊆ f '' s, p t) ↔ ∀ t ⊆ s, p (f '' t) 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α} {p : Set β → Prop}
Goal: (∀ t ⊆ f '' s, p t) ↔ ∀ t ⊆ s, p (f '' t)
-- Set.image_subset_image_iff
theorem image_subset_image_iff {f : α → β} (hf : Injective f) : f '' s ⊆ f '' t ↔ s ⊆ t 
Arguments: {α : Type u_1} {β : Type u_2} {s t : Set α} {f : α → β} (hf : Function.Injective f)
Goal: f '' s ⊆ f '' t ↔ s ⊆ t
-- Set.prod_quotient_preimage_eq_image
theorem prod_quotient_preimage_eq_image [s : Setoid α] (g : Quotient s → β) {h : α → β}
    (Hh : h = g ∘ Quotient.mk'') (r : Set (β × β)) :
    { x : Quotient s × Quotient s | (g x.1, g x.2) ∈ r } =
      (fun a : α × α => (⟦a.1⟧, ⟦a.2⟧)) '' ((fun a : α × α => (h a.1, h a.2)) ⁻¹' r) 
Arguments: {α : Type u_1} {β : Type u_2} [s : Setoid α] (g : Quotient s → β) {h : α → β} (Hh : h = g ∘ Quotient.mk'') (r : Set (β × β))
Goal: {x | (g x.1, g x.2) ∈ r} = (fun a => (⟦a.1⟧, ⟦a.2⟧)) '' ((fun a => (h a.1, h a.2)) ⁻¹' r)
-- Set.exists_image_iff
theorem exists_image_iff (f : α → β) (x : Set α) (P : β → Prop) :
    (∃ a : f '' x, P a) ↔ ∃ a : x, P (f a) 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) (x : Set α) (P : β → Prop)
Goal: (∃ a, P ↑a) ↔ ∃ a, P (f ↑a)
-- Set.imageFactorization_eq
theorem imageFactorization_eq {f : α → β} {s : Set α} :
    Subtype.val ∘ imageFactorization f s = f ∘ Subtype.val 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α}
Goal: Subtype.val ∘ Set.imageFactorization f s = f ∘ Subtype.val
-- Set.surjective_onto_image
theorem surjective_onto_image {f : α → β} {s : Set α} : Surjective (imageFactorization f s) 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set α}
Goal: Function.Surjective (Set.imageFactorization f s)
-- Set.image_perm
theorem image_perm {s : Set α} {σ : Equiv.Perm α} (hs : { a : α | σ a ≠ a } ⊆ s) : σ '' s = s 
Arguments: {α : Type u_1} {s : Set α} {σ : Equiv.Perm α} (hs : {a | σ a ≠ a} ⊆ s)
Goal: ⇑σ '' s = s
-- Set.powerset_insert
theorem powerset_insert (s : Set α) (a : α) : 𝒫 insert a s = 𝒫 s ∪ insert a '' 𝒫 s 
Arguments: {α : Type u_1} (s : Set α) (a : α)
Goal: 𝒫 insert a s = 𝒫 s ∪ insert a '' 𝒫 s
-- Set.forall_mem_range
theorem forall_mem_range {p : α → Prop} : (∀ a ∈ range f, p a) ↔ ∀ i, p (f i) 
Arguments: {α : Type u_1} {ι : Sort u_4} {f : ι → α} {p : α → Prop}
Goal: (∀ a ∈ Set.range f, p a) ↔ ∀ (i : ι), p (f i)
-- Set.forall_subtype_range_iff
theorem forall_subtype_range_iff {p : range f → Prop} :
    (∀ a : range f, p a) ↔ ∀ i, p ⟨f i, mem_range_self _⟩ 
Arguments: {α : Type u_1} {ι : Sort u_4} {f : ι → α} {p : ↑(Set.range f) → Prop}
Goal: (∀ (a : ↑(Set.range f)), p a) ↔ ∀ (i : ι), p ⟨f i, ⋯⟩
-- Set.exists_range_iff
theorem exists_range_iff {p : α → Prop} : (∃ a ∈ range f, p a) ↔ ∃ i, p (f i) 
Arguments: {α : Type u_1} {ι : Sort u_4} {f : ι → α} {p : α → Prop}
Goal: (∃ a ∈ Set.range f, p a) ↔ ∃ i, p (f i)
-- Set.exists_subtype_range_iff
theorem exists_subtype_range_iff {p : range f → Prop} :
    (∃ a : range f, p a) ↔ ∃ i, p ⟨f i, mem_range_self _⟩ 
Arguments: {α : Type u_1} {ι : Sort u_4} {f : ι → α} {p : ↑(Set.range f) → Prop}
Goal: (∃ a, p a) ↔ ∃ i, p ⟨f i, ⋯⟩
-- Set.range_iff_surjective
theorem range_iff_surjective : range f = univ ↔ Surjective f 
Arguments: {α : Type u_1} {ι : Sort u_4} {f : ι → α}
Goal: Set.range f = Set.univ ↔ Function.Surjective f
-- Set.subset_range_of_surjective
@[simp]
theorem subset_range_of_surjective {f : α → β} (h : Surjective f) (s : Set β) :
    s ⊆ range f 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} (h : Function.Surjective f) (s : Set β)
Goal: s ⊆ Set.range f
-- Set.image_univ
@[simp]
theorem image_univ {f : α → β} : f '' univ = range f 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β}
Goal: f '' Set.univ = Set.range f
-- Set.preimage_eq_univ_iff
@[simp]
theorem preimage_eq_univ_iff {f : α → β} {s} : f ⁻¹' s = univ ↔ range f ⊆ s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set β}
Goal: f ⁻¹' s = Set.univ ↔ Set.range f ⊆ s
-- Set.image_subset_range
theorem image_subset_range (f : α → β) (s) : f '' s ⊆ range f 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) (s : Set α)
Goal: f '' s ⊆ Set.range f
-- Set.mem_range_of_mem_image
theorem mem_range_of_mem_image (f : α → β) (s) {x : β} (h : x ∈ f '' s) : x ∈ range f 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) (s : Set α) {x : β} (h : x ∈ f '' s)
Goal: x ∈ Set.range f
-- Nat.mem_range_succ
theorem _root_.Nat.mem_range_succ (i : ℕ) : i ∈ range Nat.succ ↔ 0 < i 
Arguments: (i : ℕ)
Goal: i ∈ Set.range Nat.succ ↔ 0 < i
-- Set.Nonempty.preimage'
theorem Nonempty.preimage' {s : Set β} (hs : s.Nonempty) {f : α → β} (hf : s ⊆ range f) :
    (f ⁻¹' s).Nonempty 
Arguments: {α : Type u_1} {β : Type u_2} {s : Set β} (hs : s.Nonempty) {f : α → β} (hf : s ⊆ Set.range f)
Goal: (f ⁻¹' s).Nonempty
-- Set.range_comp
theorem range_comp (g : α → β) (f : ι → α) : range (g ∘ f) = g '' range f 
Arguments: {α : Type u_1} {β : Type u_2} {ι : Sort u_4} (g : α → β) (f : ι → α)
Goal: Set.range (g ∘ f) = g '' Set.range f
-- Set.range_subset_iff
theorem range_subset_iff : range f ⊆ s ↔ ∀ y, f y ∈ s 
Arguments: {α : Type u_1} {ι : Sort u_4} {f : ι → α} {s : Set α}
Goal: Set.range f ⊆ s ↔ ∀ (y : ι), f y ∈ s
-- Set.range_subset_range_iff_exists_comp
theorem range_subset_range_iff_exists_comp {f : α → γ} {g : β → γ} :
    range f ⊆ range g ↔ ∃ h : α → β, f = g ∘ h 
Arguments: {α : Type u_1} {β : Type u_2} {γ : Type u_3} {f : α → γ} {g : β → γ}
Goal: Set.range f ⊆ Set.range g ↔ ∃ h, f = g ∘ h
-- Set.range_eq_iff
theorem range_eq_iff (f : α → β) (s : Set β) :
    range f = s ↔ (∀ a, f a ∈ s) ∧ ∀ b ∈ s, ∃ a, f a = b 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) (s : Set β)
Goal: Set.range f = s ↔ (∀ (a : α), f a ∈ s) ∧ ∀ b ∈ s, ∃ a, f a = b
-- Set.range_comp_subset_range
theorem range_comp_subset_range (f : α → β) (g : β → γ) : range (g ∘ f) ⊆ range g 
Arguments: {α : Type u_1} {β : Type u_2} {γ : Type u_3} (f : α → β) (g : β → γ)
Goal: Set.range (g ∘ f) ⊆ Set.range g
-- Set.range_nonempty_iff_nonempty
theorem range_nonempty_iff_nonempty : (range f).Nonempty ↔ Nonempty ι 
Arguments: {α : Type u_1} {ι : Sort u_4} {f : ι → α}
Goal: (Set.range f).Nonempty ↔ Nonempty ι
-- Set.range_nonempty
theorem range_nonempty [h : Nonempty ι] (f : ι → α) : (range f).Nonempty 
Arguments: {α : Type u_1} {ι : Sort u_4} [h : Nonempty ι] (f : ι → α)
Goal: (Set.range f).Nonempty
-- Set.range_eq_empty_iff
@[simp]
theorem range_eq_empty_iff {f : ι → α} : range f = ∅ ↔ IsEmpty ι 
Arguments: {α : Type u_1} {ι : Sort u_4} {f : ι → α}
Goal: Set.range f = ∅ ↔ IsEmpty ι
-- Set.range_eq_empty
theorem range_eq_empty [IsEmpty ι] (f : ι → α) : range f = ∅ 
Arguments: {α : Type u_1} {ι : Sort u_4} [IsEmpty ι] (f : ι → α)
Goal: Set.range f = ∅
-- Set.image_union_image_compl_eq_range
@[simp]
theorem image_union_image_compl_eq_range (f : α → β) : f '' s ∪ f '' sᶜ = range f 
Arguments: {α : Type u_1} {β : Type u_2} {s : Set α} (f : α → β)
Goal: f '' s ∪ f '' sᶜ = Set.range f
-- Set.insert_image_compl_eq_range
theorem insert_image_compl_eq_range (f : α → β) (x : α) : insert (f x) (f '' {x}ᶜ) = range f 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) (x : α)
Goal: insert (f x) (f '' {x}ᶜ) = Set.range f
-- Set.image_preimage_eq_range_inter
theorem image_preimage_eq_range_inter {f : α → β} {t : Set β} : f '' (f ⁻¹' t) = range f ∩ t 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {t : Set β}
Goal: f '' (f ⁻¹' t) = Set.range f ∩ t
-- Set.image_preimage_eq_inter_range
theorem image_preimage_eq_inter_range {f : α → β} {t : Set β} : f '' (f ⁻¹' t) = t ∩ range f 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {t : Set β}
Goal: f '' (f ⁻¹' t) = t ∩ Set.range f
-- Set.image_preimage_eq_of_subset
theorem image_preimage_eq_of_subset {f : α → β} {s : Set β} (hs : s ⊆ range f) :
    f '' (f ⁻¹' s) = s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set β} (hs : s ⊆ Set.range f)
Goal: f '' (f ⁻¹' s) = s
-- Set.image_preimage_eq_iff
theorem image_preimage_eq_iff {f : α → β} {s : Set β} : f '' (f ⁻¹' s) = s ↔ s ⊆ range f 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set β}
Goal: f '' (f ⁻¹' s) = s ↔ s ⊆ Set.range f
-- Set.subset_range_iff_exists_image_eq
theorem subset_range_iff_exists_image_eq {f : α → β} {s : Set β} : s ⊆ range f ↔ ∃ t, f '' t = s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set β}
Goal: s ⊆ Set.range f ↔ ∃ t, f '' t = s
-- Set.range_image
theorem range_image (f : α → β) : range (image f) = 𝒫 range f 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β)
Goal: Set.range (Set.image f) = 𝒫 Set.range f
-- Set.exists_subset_range_and_iff
@[simp]
theorem exists_subset_range_and_iff {f : α → β} {p : Set β → Prop} :
    (∃ s, s ⊆ range f ∧ p s) ↔ ∃ s, p (f '' s) 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {p : Set β → Prop}
Goal: (∃ s ⊆ Set.range f, p s) ↔ ∃ s, p (f '' s)
-- Set.exists_subset_range_iff
@[deprecated exists_subset_range_and_iff (since := "2024-06-06")]
theorem exists_subset_range_iff {f : α → β} {p : Set β → Prop} :
    (∃ (s : _) (_ : s ⊆ range f), p s) ↔ ∃ s, p (f '' s) 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {p : Set β → Prop}
Goal: (∃ s, ∃ (_ : s ⊆ Set.range f), p s) ↔ ∃ s, p (f '' s)
-- Set.forall_subset_range_iff
@[simp]
theorem forall_subset_range_iff {f : α → β} {p : Set β → Prop} :
    (∀ s, s ⊆ range f → p s) ↔ ∀ s, p (f '' s) 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {p : Set β → Prop}
Goal: (∀ s ⊆ Set.range f, p s) ↔ ∀ (s : Set α), p (f '' s)
-- Set.preimage_subset_preimage_iff
@[simp]
theorem preimage_subset_preimage_iff {s t : Set α} {f : β → α} (hs : s ⊆ range f) :
    f ⁻¹' s ⊆ f ⁻¹' t ↔ s ⊆ t 
Arguments: {α : Type u_1} {β : Type u_2} {s t : Set α} {f : β → α} (hs : s ⊆ Set.range f)
Goal: f ⁻¹' s ⊆ f ⁻¹' t ↔ s ⊆ t
-- Set.preimage_eq_preimage'
theorem preimage_eq_preimage' {s t : Set α} {f : β → α} (hs : s ⊆ range f) (ht : t ⊆ range f) :
    f ⁻¹' s = f ⁻¹' t ↔ s = t 
Arguments: {α : Type u_1} {β : Type u_2} {s t : Set α} {f : β → α} (hs : s ⊆ Set.range f) (ht : t ⊆ Set.range f)
Goal: f ⁻¹' s = f ⁻¹' t ↔ s = t
-- Set.preimage_inter_range
theorem preimage_inter_range {f : α → β} {s : Set β} : f ⁻¹' (s ∩ range f) = f ⁻¹' s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set β}
Goal: f ⁻¹' (s ∩ Set.range f) = f ⁻¹' s
-- Set.preimage_range_inter
theorem preimage_range_inter {f : α → β} {s : Set β} : f ⁻¹' (range f ∩ s) = f ⁻¹' s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set β}
Goal: f ⁻¹' (Set.range f ∩ s) = f ⁻¹' s
-- Set.preimage_image_preimage
theorem preimage_image_preimage {f : α → β} {s : Set β} : f ⁻¹' (f '' (f ⁻¹' s)) = f ⁻¹' s 
Arguments: {α : Type u_1} {β : Type u_2} {f : α → β} {s : Set β}
Goal: f ⁻¹' (f '' (f ⁻¹' s)) = f ⁻¹' s
-- Set.range_id
@[simp, mfld_simps]
theorem range_id : range (@id α) = univ 
Arguments: {α : Type u_1}
Goal: Set.range id = Set.univ
-- Set.range_id'
@[simp, mfld_simps]
theorem range_id' : (range fun x : α => x) = univ 
Arguments: {α : Type u_1}
Goal: (Set.range fun x => x) = Set.univ
-- Prod.range_fst
@[simp]
theorem _root_.Prod.range_fst [Nonempty β] : range (Prod.fst : α × β → α) = univ 
Arguments: {α : Type u_1} {β : Type u_2} [Nonempty β]
Goal: Set.range Prod.fst = Set.univ
-- Prod.range_snd
@[simp]
theorem _root_.Prod.range_snd [Nonempty α] : range (Prod.snd : α × β → β) = univ 
Arguments: {α : Type u_1} {β : Type u_2} [Nonempty α]
Goal: Set.range Prod.snd = Set.univ
-- Set.range_eval
@[simp]
theorem range_eval {α : ι → Sort _} [∀ i, Nonempty (α i)] (i : ι) :
    range (eval i : (∀ i, α i) → α i) = univ 
Arguments: {ι : Sort u_4} {α : ι → Type u_6} [∀ (i : ι), Nonempty (α i)] (i : ι)
Goal: Set.range (Function.eval i) = Set.univ
-- Set.range_inl
theorem range_inl : range (@Sum.inl α β) = {x | Sum.isLeft x} 
Arguments: {α : Type u_1} {β : Type u_2}
Goal: Set.range Sum.inl = {x | x.isLeft = true}
-- Set.range_inr
theorem range_inr : range (@Sum.inr α β) = {x | Sum.isRight x} 
Arguments: {α : Type u_1} {β : Type u_2}
Goal: Set.range Sum.inr = {x | x.isRight = true}
-- Set.isCompl_range_inl_range_inr
theorem isCompl_range_inl_range_inr : IsCompl (range <| @Sum.inl α β) (range Sum.inr) 
Arguments: {α : Type u_1} {β : Type u_2}
Goal: IsCompl (Set.range Sum.inl) (Set.range Sum.inr)
-- Set.range_inl_union_range_inr
@[simp]
theorem range_inl_union_range_inr : range (Sum.inl : α → α ⊕ β) ∪ range Sum.inr = univ 
Arguments: {α : Type u_1} {β : Type u_2}
Goal: Set.range Sum.inl ∪ Set.range Sum.inr = Set.univ
-- Set.range_inl_inter_range_inr
@[simp]
theorem range_inl_inter_range_inr : range (Sum.inl : α → α ⊕ β) ∩ range Sum.inr = ∅ 
Arguments: {α : Type u_1} {β : Type u_2}
Goal: Set.range Sum.inl ∩ Set.range Sum.inr = ∅
-- Set.range_inr_union_range_inl
@[simp]
theorem range_inr_union_range_inl : range (Sum.inr : β → α ⊕ β) ∪ range Sum.inl = univ 
Arguments: {α : Type u_1} {β : Type u_2}
Goal: Set.range Sum.inr ∪ Set.range Sum.inl = Set.univ
-- Set.range_inr_inter_range_inl
@[simp]
theorem range_inr_inter_range_inl : range (Sum.inr : β → α ⊕ β) ∩ range Sum.inl = ∅ 
Arguments: {α : Type u_1} {β : Type u_2}
Goal: Set.range Sum.inr ∩ Set.range Sum.inl = ∅
-- Set.preimage_inl_image_inr
@[simp]
theorem preimage_inl_image_inr (s : Set β) : Sum.inl ⁻¹' (@Sum.inr α β '' s) = ∅ 
Arguments: {α : Type u_1} {β : Type u_2} (s : Set β)
Goal: Sum.inl ⁻¹' (Sum.inr '' s) = ∅
-- Set.preimage_inr_image_inl
@[simp]
theorem preimage_inr_image_inl (s : Set α) : Sum.inr ⁻¹' (@Sum.inl α β '' s) = ∅ 
Arguments: {α : Type u_1} {β : Type u_2} (s : Set α)
Goal: Sum.inr ⁻¹' (Sum.inl '' s) = ∅
-- Set.preimage_inl_range_inr
@[simp]
theorem preimage_inl_range_inr : Sum.inl ⁻¹' range (Sum.inr : β → α ⊕ β) = ∅ 
Arguments: {α : Type u_1} {β : Type u_2}
Goal: Sum.inl ⁻¹' Set.range Sum.inr = ∅
-- Set.preimage_inr_range_inl
@[simp]
theorem preimage_inr_range_inl : Sum.inr ⁻¹' range (Sum.inl : α → α ⊕ β) = ∅ 
Arguments: {α : Type u_1} {β : Type u_2}
Goal: Sum.inr ⁻¹' Set.range Sum.inl = ∅
-- Set.compl_range_inl
@[simp]
theorem compl_range_inl : (range (Sum.inl : α → α ⊕ β))ᶜ = range (Sum.inr : β → α ⊕ β) 
Arguments: {α : Type u_1} {β : Type u_2}
Goal: (Set.range Sum.inl)ᶜ = Set.range Sum.inr
-- Set.compl_range_inr
@[simp]
theorem compl_range_inr : (range (Sum.inr : β → α ⊕ β))ᶜ = range (Sum.inl : α → α ⊕ β) 
Arguments: {α : Type u_1} {β : Type u_2}
Goal: (Set.range Sum.inr)ᶜ = Set.range Sum.inl
-- Set.image_preimage_inl_union_image_preimage_inr
theorem image_preimage_inl_union_image_preimage_inr (s : Set (α ⊕ β)) :
    Sum.inl '' (Sum.inl ⁻¹' s) ∪ Sum.inr '' (Sum.inr ⁻¹' s) = s 
Arguments: {α : Type u_1} {β : Type u_2} (s : Set (α ⊕ β))
Goal: Sum.inl '' (Sum.inl ⁻¹' s) ∪ Sum.inr '' (Sum.inr ⁻¹' s) = s
-- Set.range_quot_mk
@[simp]
theorem range_quot_mk (r : α → α → Prop) : range (Quot.mk r) = univ 
Arguments: {α : Type u_1} (r : α → α → Prop)
Goal: Set.range (Quot.mk r) = Set.univ
-- Set.range_quot_lift
@[simp]
theorem range_quot_lift {r : ι → ι → Prop} (hf : ∀ x y, r x y → f x = f y) :
    range (Quot.lift f hf) = range f 
Arguments: {α : Type u_1} {ι : Sort u_4} {f : ι → α} {r : ι → ι → Prop} (hf : ∀ (x y : ι), r x y → f x = f y)
Goal: Set.range (Quot.lift f hf) = Set.range f
-- Set.range_quotient_mk
@[simp]
theorem range_quotient_mk [sa : Setoid α] : (range (α := Quotient sa) fun x : α => ⟦x⟧) = univ 
Arguments: {α : Type u_1} [sa : Setoid α]
Goal: (Set.range fun x => ⟦x⟧) = Set.univ
-- Set.range_quotient_lift
@[simp]
theorem range_quotient_lift [s : Setoid ι] (hf) :
    range (Quotient.lift f hf : Quotient s → α) = range f 
Arguments: {α : Type u_1} {ι : Sort u_4} {f : ι → α} [s : Setoid ι] (hf : ∀ (a b : ι), a ≈ b → f a = f b)
Goal: Set.range (Quotient.lift f hf) = Set.range f
-- Set.range_quotient_mk'
@[simp]
theorem range_quotient_mk' {s : Setoid α} : range (Quotient.mk' : α → Quotient s) = univ 
Arguments: {α : Type u_1} {s : Setoid α}
Goal: Set.range Quotient.mk' = Set.univ
-- Set.Quotient.range_mk''
@[simp] lemma Quotient.range_mk'' {sa : Setoid α} : range (Quotient.mk'' (s₁ := sa)) = univ 
Arguments: {α : Type u_1} {sa : Setoid α}
Goal: Set.range Quotient.mk'' = Set.univ
-- Set.range_quotient_lift_on'
@[simp]
theorem range_quotient_lift_on' {s : Setoid ι} (hf) :
    (range fun x : Quotient s => Quotient.liftOn' x f hf) = range f 
Arguments: {α : Type u_1} {ι : Sort u_4} {f : ι → α} {s : Setoid ι} (hf : ∀ (a b : ι), Setoid.r a b → f a = f b)
Goal: (Set.range fun x => x.liftOn' f hf) = Set.range f
-- Set.range_const_subset
theorem range_const_subset {c : α} : (range fun _ : ι => c) ⊆ {c} 
Arguments: {α : Type u_1} {ι : Sort u_4} {c : α}
Goal: (Set.range fun x => c) ⊆ {c}