ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- ContinuousMap.HomotopicRel.trans
@[trans]
theorem trans ⦃f g h : C(X, Y)⦄ (h₀ : HomotopicRel f g S) (h₁ : HomotopicRel g h S) :
    HomotopicRel f h S 
Arguments: {X : Type u} {Y : Type v} [TopologicalSpace X] [TopologicalSpace Y] {S : Set X} ⦃f g h : C(X, Y)⦄ (h₀ : f.HomotopicRel g S) (h₁ : g.HomotopicRel h S)
Goal: f.HomotopicRel h S
-- ContinuousMap.HomotopicRel.equivalence
theorem equivalence : Equivalence fun f g : C(X, Y) => HomotopicRel f g S 
Arguments: {X : Type u} {Y : Type v} [TopologicalSpace X] [TopologicalSpace Y] {S : Set X}
Goal: Equivalence fun f g => f.HomotopicRel g S
-- ContinuousMap.homotopicRel_empty
@[simp] theorem homotopicRel_empty {f₀ f₁ : C(X, Y)} : HomotopicRel f₀ f₁ ∅ ↔ Homotopic f₀ f₁ 
Arguments: {X : Type u} {Y : Type v} [TopologicalSpace X] [TopologicalSpace Y] {f₀ f₁ : C(X, Y)}
Goal: f₀.HomotopicRel f₁ ∅ ↔ f₀.Homotopic f₁
-- tendsto_cofinite_cocompact_iff
lemma tendsto_cofinite_cocompact_iff :
    Tendsto f cofinite (cocompact _) ↔ ∀ K, IsCompact K → Set.Finite (f ⁻¹' K) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace Y] {f : X → Y}
Goal: Filter.Tendsto f Filter.cofinite (Filter.cocompact Y) ↔ ∀ (K : Set Y), IsCompact K → (f ⁻¹' K).Finite
-- Continuous.discrete_of_tendsto_cofinite_cocompact
lemma Continuous.discrete_of_tendsto_cofinite_cocompact [T1Space X] [WeaklyLocallyCompactSpace Y]
    (hf' : Continuous f) (hf : Tendsto f cofinite (cocompact _)) :
    DiscreteTopology X 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : X → Y} [T1Space X] [WeaklyLocallyCompactSpace Y] (hf' : Continuous f) (hf : Filter.Tendsto f Filter.cofinite (Filter.cocompact Y))
Goal: DiscreteTopology X
-- tendsto_cofinite_cocompact_of_discrete
lemma tendsto_cofinite_cocompact_of_discrete [DiscreteTopology X]
    (hf : Tendsto f (cocompact _) (cocompact _)) :
    Tendsto f cofinite (cocompact _) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : X → Y} [DiscreteTopology X] (hf : Filter.Tendsto f (Filter.cocompact X) (Filter.cocompact Y))
Goal: Filter.Tendsto f Filter.cofinite (Filter.cocompact Y)
-- IsClosed.tendsto_coe_cofinite_of_discreteTopology
lemma IsClosed.tendsto_coe_cofinite_of_discreteTopology
    {s : Set X} (hs : IsClosed s) (_hs' : DiscreteTopology s) :
    Tendsto ((↑) : s → X) cofinite (cocompact _) 
Arguments: {X : Type u_1} [TopologicalSpace X] {s : Set X} (hs : IsClosed s) (_hs' : DiscreteTopology ↑s)
Goal: Filter.Tendsto Subtype.val Filter.cofinite (Filter.cocompact X)
-- IsClosed.tendsto_coe_cofinite_iff
lemma IsClosed.tendsto_coe_cofinite_iff [T1Space X] [WeaklyLocallyCompactSpace X]
    {s : Set X} (hs : IsClosed s) :
    Tendsto ((↑) : s → X) cofinite (cocompact _) ↔ DiscreteTopology s 
Arguments: {X : Type u_1} [TopologicalSpace X] [T1Space X] [WeaklyLocallyCompactSpace X] {s : Set X} (hs : IsClosed s)
Goal: Filter.Tendsto Subtype.val Filter.cofinite (Filter.cocompact X) ↔ DiscreteTopology ↑s
-- isClosed_and_discrete_iff
theorem isClosed_and_discrete_iff {S : Set X} :
    IsClosed S ∧ DiscreteTopology S ↔ ∀ x, Disjoint (𝓝[≠] x) (𝓟 S) 
Arguments: {X : Type u_1} [TopologicalSpace X] {S : Set X}
Goal: IsClosed S ∧ DiscreteTopology ↑S ↔ ∀ (x : X), Disjoint (𝓝[≠] x) (𝓟 S)
-- exists_bounded_zero_one_of_closed
theorem exists_bounded_zero_one_of_closed {X : Type*} [TopologicalSpace X] [NormalSpace X]
    {s t : Set X} (hs : IsClosed s) (ht : IsClosed t) (hd : Disjoint s t) :
    ∃ f : X →ᵇ ℝ, EqOn f 0 s ∧ EqOn f 1 t ∧ ∀ x, f x ∈ Icc (0 : ℝ) 1 
Arguments: {X : Type u_1} [TopologicalSpace X] [NormalSpace X] {s t : Set X} (hs : IsClosed s) (ht : IsClosed t) (hd : Disjoint s t)
Goal: ∃ f, Set.EqOn (⇑f) 0 s ∧ Set.EqOn (⇑f) 1 t ∧ ∀ (x : X), f x ∈ Set.Icc 0 1
-- exists_bounded_mem_Icc_of_closed_of_le
theorem exists_bounded_mem_Icc_of_closed_of_le {X : Type*} [TopologicalSpace X] [NormalSpace X]
    {s t : Set X} (hs : IsClosed s) (ht : IsClosed t) (hd : Disjoint s t) {a b : ℝ} (hle : a ≤ b) :
    ∃ f : X →ᵇ ℝ, EqOn f (Function.const X a) s ∧ EqOn f (Function.const X b) t ∧
    ∀ x, f x ∈ Icc a b 
Arguments: {X : Type u_1} [TopologicalSpace X] [NormalSpace X] {s t : Set X} (hs : IsClosed s) (ht : IsClosed t) (hd : Disjoint s t) {a b : ℝ} (hle : a ≤ b)
Goal: ∃ f, Set.EqOn (⇑f) (Function.const X a) s ∧ Set.EqOn (⇑f) (Function.const X b) t ∧ ∀ (x : X), f x ∈ Set.Icc a b
-- IsCompact.isSigmaCompact
lemma IsCompact.isSigmaCompact {s : Set X} (hs : IsCompact s) : IsSigmaCompact s 
Arguments: {X : Type u_1} [TopologicalSpace X] {s : Set X} (hs : IsCompact s)
Goal: IsSigmaCompact s
-- isSigmaCompact_empty
@[simp]
lemma isSigmaCompact_empty : IsSigmaCompact (∅ : Set X) 
Arguments: {X : Type u_1} [TopologicalSpace X]
Goal: IsSigmaCompact ∅
-- isSigmaCompact_iUnion_of_isCompact
lemma isSigmaCompact_iUnion_of_isCompact [hι : Countable ι] (s : ι → Set X)
    (hcomp : ∀ i, IsCompact (s i)) : IsSigmaCompact (⋃ i, s i) 
Arguments: {X : Type u_1} {ι : Type u_3} [TopologicalSpace X] [hι : Countable ι] (s : ι → Set X) (hcomp : ∀ (i : ι), IsCompact (s i))
Goal: IsSigmaCompact (⋃ i, s i)
-- isSigmaCompact_sUnion_of_isCompact
lemma isSigmaCompact_sUnion_of_isCompact {S : Set (Set X)} (hc : Set.Countable S)
    (hcomp : ∀ (s : Set X), s ∈ S → IsCompact s) : IsSigmaCompact (⋃₀ S) 
Arguments: {X : Type u_1} [TopologicalSpace X] {S : Set (Set X)} (hc : S.Countable) (hcomp : ∀ s ∈ S, IsCompact s)
Goal: IsSigmaCompact (⋃₀ S)
-- isSigmaCompact_iUnion
lemma isSigmaCompact_iUnion [Countable ι] (s : ι → Set X)
    (hcomp : ∀ i, IsSigmaCompact (s i)) : IsSigmaCompact (⋃ i, s i) 
Arguments: {X : Type u_1} {ι : Type u_3} [TopologicalSpace X] [Countable ι] (s : ι → Set X) (hcomp : ∀ (i : ι), IsSigmaCompact (s i))
Goal: IsSigmaCompact (⋃ i, s i)
-- isSigmaCompact_sUnion
lemma isSigmaCompact_sUnion (S : Set (Set X)) (hc : Set.Countable S)
    (hcomp : ∀ s : S, IsSigmaCompact s (X := X)) : IsSigmaCompact (⋃₀ S) 
Arguments: {X : Type u_1} [TopologicalSpace X] (S : Set (Set X)) (hc : S.Countable) (hcomp : ∀ (s : ↑S), IsSigmaCompact ↑s)
Goal: IsSigmaCompact (⋃₀ S)
-- isSigmaCompact_biUnion
lemma isSigmaCompact_biUnion {s : Set ι} {S : ι → Set X} (hc : Set.Countable s)
    (hcomp : ∀ (i : ι), i ∈ s → IsSigmaCompact (S i)) :
    IsSigmaCompact (⋃ (i : ι) (_ : i ∈ s), S i) 
Arguments: {X : Type u_1} {ι : Type u_3} [TopologicalSpace X] {s : Set ι} {S : ι → Set X} (hc : s.Countable) (hcomp : ∀ i ∈ s, IsSigmaCompact (S i))
Goal: IsSigmaCompact (⋃ i ∈ s, S i)
-- IsSigmaCompact.of_isClosed_subset
lemma IsSigmaCompact.of_isClosed_subset {s t : Set X} (ht : IsSigmaCompact t)
    (hs : IsClosed s) (h : s ⊆ t) : IsSigmaCompact s 
Arguments: {X : Type u_1} [TopologicalSpace X] {s t : Set X} (ht : IsSigmaCompact t) (hs : IsClosed s) (h : s ⊆ t)
Goal: IsSigmaCompact s
-- IsSigmaCompact.image_of_continuousOn
lemma IsSigmaCompact.image_of_continuousOn {f : X → Y} {s : Set X} (hs : IsSigmaCompact s)
    (hf : ContinuousOn f s) : IsSigmaCompact (f '' s) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : X → Y} {s : Set X} (hs : IsSigmaCompact s) (hf : ContinuousOn f s)
Goal: IsSigmaCompact (f '' s)
-- IsSigmaCompact.image
lemma IsSigmaCompact.image {f : X → Y} (hf : Continuous f) {s : Set X} (hs : IsSigmaCompact s) :
    IsSigmaCompact (f '' s) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : X → Y} (hf : Continuous f) {s : Set X} (hs : IsSigmaCompact s)
Goal: IsSigmaCompact (f '' s)
-- Inducing.isSigmaCompact_iff
lemma Inducing.isSigmaCompact_iff {f : X → Y} {s : Set X}
    (hf : Inducing f) : IsSigmaCompact s ↔ IsSigmaCompact (f '' s) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : X → Y} {s : Set X} (hf : Inducing f)
Goal: IsSigmaCompact s ↔ IsSigmaCompact (f '' s)
-- Embedding.isSigmaCompact_iff
lemma Embedding.isSigmaCompact_iff {f : X → Y} {s : Set X}
    (hf : Embedding f) : IsSigmaCompact s ↔ IsSigmaCompact (f '' s) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : X → Y} {s : Set X} (hf : Embedding f)
Goal: IsSigmaCompact s ↔ IsSigmaCompact (f '' s)
-- Subtype.isSigmaCompact_iff
lemma Subtype.isSigmaCompact_iff {p : X → Prop} {s : Set { a // p a }} :
    IsSigmaCompact s ↔ IsSigmaCompact ((↑) '' s : Set X) 
Arguments: {X : Type u_1} [TopologicalSpace X] {p : X → Prop} {s : Set { a // p a }}
Goal: IsSigmaCompact s ↔ IsSigmaCompact (Subtype.val '' s)
-- SigmaCompactSpace.isSigmaCompact_univ
class SigmaCompactSpace (X : Type*) [TopologicalSpace X] : Prop where
    isSigmaCompact_univ : IsSigmaCompact (univ : Set X)
Arguments: {X : Type u_4} [TopologicalSpace X] [self : SigmaCompactSpace X]
Goal: IsSigmaCompact Set.univ
-- isSigmaCompact_univ_iff
lemma isSigmaCompact_univ_iff : IsSigmaCompact (univ : Set X) ↔ SigmaCompactSpace X 
Arguments: {X : Type u_1} [TopologicalSpace X]
Goal: IsSigmaCompact Set.univ ↔ SigmaCompactSpace X
-- isSigmaCompact_univ
lemma isSigmaCompact_univ [h : SigmaCompactSpace X] : IsSigmaCompact (univ : Set X) 
Arguments: {X : Type u_1} [TopologicalSpace X] [h : SigmaCompactSpace X]
Goal: IsSigmaCompact Set.univ
-- SigmaCompactSpace_iff_exists_compact_covering
lemma SigmaCompactSpace_iff_exists_compact_covering :
    SigmaCompactSpace X ↔ ∃ K : ℕ → Set X, (∀ n, IsCompact (K n)) ∧ ⋃ n, K n = univ 
Arguments: {X : Type u_1} [TopologicalSpace X]
Goal: SigmaCompactSpace X ↔ ∃ K, (∀ (n : ℕ), IsCompact (K n)) ∧ ⋃ n, K n = Set.univ
-- SigmaCompactSpace.exists_compact_covering
lemma SigmaCompactSpace.exists_compact_covering [h : SigmaCompactSpace X] :
    ∃ K : ℕ → Set X, (∀ n, IsCompact (K n)) ∧ ⋃ n, K n = univ 
Arguments: {X : Type u_1} [TopologicalSpace X] [h : SigmaCompactSpace X]
Goal: ∃ K, (∀ (n : ℕ), IsCompact (K n)) ∧ ⋃ n, K n = Set.univ
-- isSigmaCompact_range
lemma isSigmaCompact_range {f : X → Y} (hf : Continuous f) [SigmaCompactSpace X] :
    IsSigmaCompact (range f) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : X → Y} (hf : Continuous f) [SigmaCompactSpace X]
Goal: IsSigmaCompact (Set.range f)
-- isSigmaCompact_iff_isSigmaCompact_univ
lemma isSigmaCompact_iff_isSigmaCompact_univ {s : Set X} :
    IsSigmaCompact s ↔ IsSigmaCompact (univ : Set s) 
Arguments: {X : Type u_1} [TopologicalSpace X] {s : Set X}
Goal: IsSigmaCompact s ↔ IsSigmaCompact Set.univ
-- isSigmaCompact_iff_sigmaCompactSpace
lemma isSigmaCompact_iff_sigmaCompactSpace {s : Set X} :
    IsSigmaCompact s ↔ SigmaCompactSpace s 
Arguments: {X : Type u_1} [TopologicalSpace X] {s : Set X}
Goal: IsSigmaCompact s ↔ SigmaCompactSpace ↑s
-- SigmaCompactSpace.of_countable
theorem SigmaCompactSpace.of_countable (S : Set (Set X)) (Hc : S.Countable)
    (Hcomp : ∀ s ∈ S, IsCompact s) (HU : ⋃₀ S = univ) : SigmaCompactSpace X 
Arguments: {X : Type u_1} [TopologicalSpace X] (S : Set (Set X)) (Hc : S.Countable) (Hcomp : ∀ s ∈ S, IsCompact s) (HU : ⋃₀ S = Set.univ)
Goal: SigmaCompactSpace X
-- isCompact_compactCovering
theorem isCompact_compactCovering (n : ℕ) : IsCompact (compactCovering X n) 
Arguments: (X : Type u_1) [TopologicalSpace X] [SigmaCompactSpace X] (n : ℕ)
Goal: IsCompact (compactCovering X n)
-- iUnion_compactCovering
theorem iUnion_compactCovering : ⋃ n, compactCovering X n = univ 
Arguments: (X : Type u_1) [TopologicalSpace X] [SigmaCompactSpace X]
Goal: ⋃ n, compactCovering X n = Set.univ
-- iUnion_closure_compactCovering
theorem iUnion_closure_compactCovering : ⋃ n, closure (compactCovering X n) = univ 
Arguments: (X : Type u_1) [TopologicalSpace X] [SigmaCompactSpace X]
Goal: ⋃ n, closure (compactCovering X n) = Set.univ
-- compactCovering_subset
@[mono, gcongr]
theorem compactCovering_subset ⦃m n : ℕ⦄ (h : m ≤ n) : compactCovering X m ⊆ compactCovering X n 
Arguments: (X : Type u_1) [TopologicalSpace X] [SigmaCompactSpace X] ⦃m n : ℕ⦄ (h : m ≤ n)
Goal: compactCovering X m ⊆ compactCovering X n
-- exists_mem_compactCovering
theorem exists_mem_compactCovering (x : X) : ∃ n, x ∈ compactCovering X n 
Arguments: {X : Type u_1} [TopologicalSpace X] [SigmaCompactSpace X] (x : X)
Goal: ∃ n, x ∈ compactCovering X n
-- ClosedEmbedding.sigmaCompactSpace
protected theorem ClosedEmbedding.sigmaCompactSpace {e : Y → X} (he : ClosedEmbedding e) :
    SigmaCompactSpace Y 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] [SigmaCompactSpace X] {e : Y → X} (he : ClosedEmbedding e)
Goal: SigmaCompactSpace Y
-- IsClosed.sigmaCompactSpace
theorem IsClosed.sigmaCompactSpace {s : Set X} (hs : IsClosed s) : SigmaCompactSpace s 
Arguments: {X : Type u_1} [TopologicalSpace X] [SigmaCompactSpace X] {s : Set X} (hs : IsClosed s)
Goal: SigmaCompactSpace ↑s
-- LocallyFinite.countable_univ
protected theorem LocallyFinite.countable_univ {f : ι → Set X} (hf : LocallyFinite f)
    (hne : ∀ i, (f i).Nonempty) : (univ : Set ι).Countable 
Arguments: {X : Type u_1} {ι : Type u_3} [TopologicalSpace X] [SigmaCompactSpace X] {f : ι → Set X} (hf : LocallyFinite f) (hne : ∀ (i : ι), (f i).Nonempty)
Goal: Set.univ.Countable
-- countable_cover_nhdsWithin_of_sigma_compact
theorem countable_cover_nhdsWithin_of_sigma_compact {f : X → Set X} {s : Set X} (hs : IsClosed s)
    (hf : ∀ x ∈ s, f x ∈ 𝓝[s] x) : ∃ t ⊆ s, t.Countable ∧ s ⊆ ⋃ x ∈ t, f x 
Arguments: {X : Type u_1} [TopologicalSpace X] [SigmaCompactSpace X] {f : X → Set X} {s : Set X} (hs : IsClosed s) (hf : ∀ x ∈ s, f x ∈ 𝓝[s] x)
Goal: ∃ t ⊆ s, t.Countable ∧ s ⊆ ⋃ x ∈ t, f x
-- countable_cover_nhds_of_sigma_compact
theorem countable_cover_nhds_of_sigma_compact {f : X → Set X} (hf : ∀ x, f x ∈ 𝓝 x) :
    ∃ s : Set X, s.Countable ∧ ⋃ x ∈ s, f x = univ 
Arguments: {X : Type u_1} [TopologicalSpace X] [SigmaCompactSpace X] {f : X → Set X} (hf : ∀ (x : X), f x ∈ 𝓝 x)
Goal: ∃ s, s.Countable ∧ ⋃ x ∈ s, f x = Set.univ
-- CompactExhaustion.subset_interior_succ'
structure CompactExhaustion (X : Type*) [TopologicalSpace X] where
    toFun : ℕ → Set X
    isCompact' : ∀ n, IsCompact (toFun n)
    subset_interior_succ' : ∀ n, toFun n ⊆ interior (toFun (n + 1))
    iUnion_eq' : ⋃ n, toFun n = univ
Arguments: {X : Type u_4} [TopologicalSpace X] (self : CompactExhaustion X) (n : ℕ)
Goal: self.toFun n ⊆ interior (self.toFun (n + 1))
-- CompactExhaustion.iUnion_eq'
structure CompactExhaustion (X : Type*) [TopologicalSpace X] where
    toFun : ℕ → Set X
    isCompact' : ∀ n, IsCompact (toFun n)
    subset_interior_succ' : ∀ n, toFun n ⊆ interior (toFun (n + 1))
    iUnion_eq' : ⋃ n, toFun n = univ
Arguments: {X : Type u_4} [TopologicalSpace X] (self : CompactExhaustion X)
Goal: ⋃ n, self.toFun n = Set.univ
-- CompactExhaustion.isCompact'
structure CompactExhaustion (X : Type*) [TopologicalSpace X] where
    toFun : ℕ → Set X
    isCompact' : ∀ n, IsCompact (toFun n)
    subset_interior_succ' : ∀ n, toFun n ⊆ interior (toFun (n + 1))
    iUnion_eq' : ⋃ n, toFun n = univ
Arguments: {X : Type u_4} [TopologicalSpace X] (self : CompactExhaustion X) (n : ℕ)
Goal: IsCompact (self.toFun n)
-- CompactExhaustion.toFun_eq_coe
@[simp]
theorem toFun_eq_coe : K.toFun = K 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X)
Goal: K.toFun = ⇑K
-- CompactExhaustion.isCompact
protected theorem isCompact (n : ℕ) : IsCompact (K n) 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X) (n : ℕ)
Goal: IsCompact (K n)
-- CompactExhaustion.subset_interior_succ
theorem subset_interior_succ (n : ℕ) : K n ⊆ interior (K (n + 1)) 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X) (n : ℕ)
Goal: K n ⊆ interior (K (n + 1))
-- CompactExhaustion.subset
@[mono]
protected theorem subset ⦃m n : ℕ⦄ (h : m ≤ n) : K m ⊆ K n 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X) ⦃m n : ℕ⦄ (h : m ≤ n)
Goal: K m ⊆ K n
-- CompactExhaustion.subset_succ
theorem subset_succ (n : ℕ) : K n ⊆ K (n + 1) 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X) (n : ℕ)
Goal: K n ⊆ K (n + 1)
-- CompactExhaustion.subset_interior
theorem subset_interior ⦃m n : ℕ⦄ (h : m < n) : K m ⊆ interior (K n) 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X) ⦃m n : ℕ⦄ (h : m < n)
Goal: K m ⊆ interior (K n)
-- CompactExhaustion.iUnion_eq
theorem iUnion_eq : ⋃ n, K n = univ 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X)
Goal: ⋃ n, K n = Set.univ
-- CompactExhaustion.exists_mem
theorem exists_mem (x : X) : ∃ n, x ∈ K n 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X) (x : X)
Goal: ∃ n, x ∈ K n
-- CompactExhaustion.exists_superset_of_isCompact
theorem exists_superset_of_isCompact {s : Set X} (hs : IsCompact s) : ∃ n, s ⊆ K n 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X) {s : Set X} (hs : IsCompact s)
Goal: ∃ n, s ⊆ K n
-- CompactExhaustion.mem_find
theorem mem_find (x : X) : x ∈ K (K.find x) 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X) (x : X)
Goal: x ∈ K (K.find x)
-- CompactExhaustion.mem_iff_find_le
theorem mem_iff_find_le {x : X} {n : ℕ} : x ∈ K n ↔ K.find x ≤ n 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X) {x : X} {n : ℕ}
Goal: x ∈ K n ↔ K.find x ≤ n
-- CompactExhaustion.find_shiftr
@[simp]
theorem find_shiftr (x : X) : K.shiftr.find x = K.find x + 1 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X) (x : X)
Goal: K.shiftr.find x = K.find x + 1
-- CompactExhaustion.mem_diff_shiftr_find
theorem mem_diff_shiftr_find (x : X) : x ∈ K.shiftr (K.find x + 1) \ K.shiftr (K.find x) 
Arguments: {X : Type u_1} [TopologicalSpace X] (K : CompactExhaustion X) (x : X)
Goal: x ∈ K.shiftr (K.find x + 1) \ K.shiftr (K.find x)
-- DiscreteQuotient.isOpen_setOf_rel
@[ext] -- Porting note: in Lean 4, uses projection to `r` instead of `Setoid`.
structure DiscreteQuotient (X : Type*) [TopologicalSpace X] extends Setoid X where
    protected isOpen_setOf_rel : ∀ x, IsOpen (setOf (toSetoid.Rel x))
Arguments: {X : Type u_5} [TopologicalSpace X] (self : DiscreteQuotient X) (x : X)
Goal: IsOpen (setOf (self.Rel x))
-- DiscreteQuotient.toSetoid_injective
lemma toSetoid_injective : Function.Injective (@toSetoid X _)
  
Arguments: {X : Type u_2} [TopologicalSpace X]
Goal: Function.Injective DiscreteQuotient.toSetoid
-- DiscreteQuotient.refl
theorem refl : ∀ x, S.Rel x x 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X) (x : X)
Goal: S.Rel x x
-- DiscreteQuotient.symm
theorem symm (x y : X) : S.Rel x y → S.Rel y x 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X) (x y : X)
Goal: S.Rel x y → S.Rel y x
-- DiscreteQuotient.trans
theorem trans (x y z : X) : S.Rel x y → S.Rel y z → S.Rel x z 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X) (x y z : X)
Goal: S.Rel x y → S.Rel y z → S.Rel x z
-- DiscreteQuotient.fiber_eq
theorem fiber_eq (x : X) : S.proj ⁻¹' {S.proj x} = setOf (S.Rel x) 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X) (x : X)
Goal: S.proj ⁻¹' {S.proj x} = setOf (S.Rel x)
-- DiscreteQuotient.proj_surjective
theorem proj_surjective : Function.Surjective S.proj 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X)
Goal: Function.Surjective S.proj
-- DiscreteQuotient.proj_quotientMap
theorem proj_quotientMap : QuotientMap S.proj 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X)
Goal: QuotientMap S.proj
-- DiscreteQuotient.proj_continuous
theorem proj_continuous : Continuous S.proj 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X)
Goal: Continuous S.proj
-- DiscreteQuotient.proj_isLocallyConstant
theorem proj_isLocallyConstant : IsLocallyConstant S.proj 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X)
Goal: IsLocallyConstant S.proj
-- DiscreteQuotient.isClopen_preimage
theorem isClopen_preimage (A : Set S) : IsClopen (S.proj ⁻¹' A) 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X) (A : Set (Quotient S.toSetoid))
Goal: IsClopen (S.proj ⁻¹' A)
-- DiscreteQuotient.isOpen_preimage
theorem isOpen_preimage (A : Set S) : IsOpen (S.proj ⁻¹' A) 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X) (A : Set (Quotient S.toSetoid))
Goal: IsOpen (S.proj ⁻¹' A)
-- DiscreteQuotient.isClosed_preimage
theorem isClosed_preimage (A : Set S) : IsClosed (S.proj ⁻¹' A) 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X) (A : Set (Quotient S.toSetoid))
Goal: IsClosed (S.proj ⁻¹' A)
-- DiscreteQuotient.isClopen_setOf_rel
theorem isClopen_setOf_rel (x : X) : IsClopen (setOf (S.Rel x)) 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X) (x : X)
Goal: IsClopen (setOf (S.Rel x))
-- DiscreteQuotient.comap_id
@[simp]
theorem comap_id : S.comap (ContinuousMap.id X) = S 
Arguments: {X : Type u_2} [TopologicalSpace X] (S : DiscreteQuotient X)
Goal: DiscreteQuotient.comap (ContinuousMap.id X) S = S
-- DiscreteQuotient.comap_comp
@[simp]
theorem comap_comp (S : DiscreteQuotient Z) : S.comap (g.comp f) = (S.comap g).comap f 
Arguments: {X : Type u_2} {Y : Type u_3} {Z : Type u_4} [TopologicalSpace X] [TopologicalSpace Y] [TopologicalSpace Z] (g : C(Y, Z)) (f : C(X, Y)) (S : DiscreteQuotient Z)
Goal: DiscreteQuotient.comap (g.comp f) S = DiscreteQuotient.comap f (DiscreteQuotient.comap g S)
-- DiscreteQuotient.comap_mono
@[mono]
theorem comap_mono {A B : DiscreteQuotient Y} (h : A ≤ B) : A.comap f ≤ B.comap f 
Arguments: {X : Type u_2} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] (f : C(X, Y)) {A B : DiscreteQuotient Y} (h : A ≤ B)
Goal: DiscreteQuotient.comap f A ≤ DiscreteQuotient.comap f B
-- DiscreteQuotient.ofLE_refl
@[simp]
theorem ofLE_refl : ofLE (le_refl A) = id 
Arguments: {X : Type u_2} [TopologicalSpace X] {A : DiscreteQuotient X}
Goal: DiscreteQuotient.ofLE ⋯ = id
-- DiscreteQuotient.ofLE_refl_apply
theorem ofLE_refl_apply (a : A) : ofLE (le_refl A) a = a 
Arguments: {X : Type u_2} [TopologicalSpace X] {A : DiscreteQuotient X} (a : Quotient A.toSetoid)
Goal: DiscreteQuotient.ofLE ⋯ a = a
-- DiscreteQuotient.ofLE_ofLE
@[simp]
theorem ofLE_ofLE (h₁ : A ≤ B) (h₂ : B ≤ C) (x : A) :
    ofLE h₂ (ofLE h₁ x) = ofLE (h₁.trans h₂) x 
Arguments: {X : Type u_2} [TopologicalSpace X] {A B C : DiscreteQuotient X} (h₁ : A ≤ B) (h₂ : B ≤ C) (x : Quotient A.toSetoid)
Goal: DiscreteQuotient.ofLE h₂ (DiscreteQuotient.ofLE h₁ x) = DiscreteQuotient.ofLE ⋯ x
-- DiscreteQuotient.ofLE_comp_ofLE
@[simp]
theorem ofLE_comp_ofLE (h₁ : A ≤ B) (h₂ : B ≤ C) : ofLE h₂ ∘ ofLE h₁ = ofLE (le_trans h₁ h₂) 
Arguments: {X : Type u_2} [TopologicalSpace X] {A B C : DiscreteQuotient X} (h₁ : A ≤ B) (h₂ : B ≤ C)
Goal: DiscreteQuotient.ofLE h₂ ∘ DiscreteQuotient.ofLE h₁ = DiscreteQuotient.ofLE ⋯
-- DiscreteQuotient.ofLE_continuous
theorem ofLE_continuous (h : A ≤ B) : Continuous (ofLE h) 
Arguments: {X : Type u_2} [TopologicalSpace X] {A B : DiscreteQuotient X} (h : A ≤ B)
Goal: Continuous (DiscreteQuotient.ofLE h)
-- DiscreteQuotient.ofLE_proj
@[simp]
theorem ofLE_proj (h : A ≤ B) (x : X) : ofLE h (A.proj x) = B.proj x 
Arguments: {X : Type u_2} [TopologicalSpace X] {A B : DiscreteQuotient X} (h : A ≤ B) (x : X)
Goal: DiscreteQuotient.ofLE h (A.proj x) = B.proj x
-- DiscreteQuotient.ofLE_comp_proj
@[simp]
theorem ofLE_comp_proj (h : A ≤ B) : ofLE h ∘ A.proj = B.proj 
Arguments: {X : Type u_2} [TopologicalSpace X] {A B : DiscreteQuotient X} (h : A ≤ B)
Goal: DiscreteQuotient.ofLE h ∘ A.proj = B.proj
-- DiscreteQuotient.proj_bot_eq
@[simp]
theorem proj_bot_eq [LocallyConnectedSpace X] {x y : X} :
    proj ⊥ x = proj ⊥ y ↔ connectedComponent x = connectedComponent y 
Arguments: {X : Type u_2} [TopologicalSpace X] [LocallyConnectedSpace X] {x y : X}
Goal: ⊥.proj x = ⊥.proj y ↔ connectedComponent x = connectedComponent y
-- DiscreteQuotient.proj_bot_inj
theorem proj_bot_inj [DiscreteTopology X] {x y : X} : proj ⊥ x = proj ⊥ y ↔ x = y 
Arguments: {X : Type u_2} [TopologicalSpace X] [DiscreteTopology X] {x y : X}
Goal: ⊥.proj x = ⊥.proj y ↔ x = y
-- DiscreteQuotient.proj_bot_injective
theorem proj_bot_injective [DiscreteTopology X] : Injective (⊥ : DiscreteQuotient X).proj 
Arguments: {X : Type u_2} [TopologicalSpace X] [DiscreteTopology X]
Goal: Function.Injective ⊥.proj
-- DiscreteQuotient.proj_bot_bijective
theorem proj_bot_bijective [DiscreteTopology X] : Bijective (⊥ : DiscreteQuotient X).proj 
Arguments: {X : Type u_2} [TopologicalSpace X] [DiscreteTopology X]
Goal: Function.Bijective ⊥.proj