ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- EMetric.hausdorffEdist_closure₁
@[simp]
theorem hausdorffEdist_closure₁ : hausdorffEdist (closure s) t = hausdorffEdist s t 
Arguments: {α : Type u} [PseudoEMetricSpace α] {s t : Set α}
Goal: EMetric.hausdorffEdist (closure s) t = EMetric.hausdorffEdist s t
-- EMetric.hausdorffEdist_closure₂
@[simp]
theorem hausdorffEdist_closure₂ : hausdorffEdist s (closure t) = hausdorffEdist s t 
Arguments: {α : Type u} [PseudoEMetricSpace α] {s t : Set α}
Goal: EMetric.hausdorffEdist s (closure t) = EMetric.hausdorffEdist s t
-- EMetric.hausdorffEdist_closure
-- @[simp] -- Porting note (#10618): simp can prove this
theorem hausdorffEdist_closure : hausdorffEdist (closure s) (closure t) = hausdorffEdist s t 
Arguments: {α : Type u} [PseudoEMetricSpace α] {s t : Set α}
Goal: EMetric.hausdorffEdist (closure s) (closure t) = EMetric.hausdorffEdist s t
-- EMetric.hausdorffEdist_zero_iff_eq_of_closed
theorem hausdorffEdist_zero_iff_eq_of_closed (hs : IsClosed s) (ht : IsClosed t) :
    hausdorffEdist s t = 0 ↔ s = t 
Arguments: {α : Type u} [PseudoEMetricSpace α] {s t : Set α} (hs : IsClosed s) (ht : IsClosed t)
Goal: EMetric.hausdorffEdist s t = 0 ↔ s = t
-- EMetric.hausdorffEdist_empty
theorem hausdorffEdist_empty (ne : s.Nonempty) : hausdorffEdist s ∅ = ∞ 
Arguments: {α : Type u} [PseudoEMetricSpace α] {s : Set α} (ne : s.Nonempty)
Goal: EMetric.hausdorffEdist s ∅ = ⊤
-- EMetric.nonempty_of_hausdorffEdist_ne_top
theorem nonempty_of_hausdorffEdist_ne_top (hs : s.Nonempty) (fin : hausdorffEdist s t ≠ ⊤) :
    t.Nonempty 
Arguments: {α : Type u} [PseudoEMetricSpace α] {s t : Set α} (hs : s.Nonempty) (fin : EMetric.hausdorffEdist s t ≠ ⊤)
Goal: t.Nonempty
-- EMetric.empty_or_nonempty_of_hausdorffEdist_ne_top
theorem empty_or_nonempty_of_hausdorffEdist_ne_top (fin : hausdorffEdist s t ≠ ⊤) :
    (s = ∅ ∧ t = ∅) ∨ (s.Nonempty ∧ t.Nonempty) 
Arguments: {α : Type u} [PseudoEMetricSpace α] {s t : Set α} (fin : EMetric.hausdorffEdist s t ≠ ⊤)
Goal: s = ∅ ∧ t = ∅ ∨ s.Nonempty ∧ t.Nonempty
-- Metric.infDist_eq_iInf
theorem infDist_eq_iInf : infDist x s = ⨅ y : s, dist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α}
Goal: Metric.infDist x s = ⨅ y, dist x ↑y
-- Metric.infDist_nonneg
theorem infDist_nonneg : 0 ≤ infDist x s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α}
Goal: 0 ≤ Metric.infDist x s
-- Metric.infDist_empty
@[simp]
theorem infDist_empty : infDist x ∅ = 0 
Arguments: {α : Type u} [PseudoMetricSpace α] {x : α}
Goal: Metric.infDist x ∅ = 0
-- Metric.infEdist_ne_top
theorem infEdist_ne_top (h : s.Nonempty) : infEdist x s ≠ ⊤ 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α} (h : s.Nonempty)
Goal: EMetric.infEdist x s ≠ ⊤
-- Metric.infEdist_eq_top_iff
theorem infEdist_eq_top_iff : infEdist x s = ∞ ↔ s = ∅ 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α}
Goal: EMetric.infEdist x s = ⊤ ↔ s = ∅
-- Metric.infDist_zero_of_mem
theorem infDist_zero_of_mem (h : x ∈ s) : infDist x s = 0 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α} (h : x ∈ s)
Goal: Metric.infDist x s = 0
-- Metric.infDist_singleton
@[simp]
theorem infDist_singleton : infDist x {y} = dist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] {x y : α}
Goal: Metric.infDist x {y} = dist x y
-- Metric.infDist_le_dist_of_mem
theorem infDist_le_dist_of_mem (h : y ∈ s) : infDist x s ≤ dist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x y : α} (h : y ∈ s)
Goal: Metric.infDist x s ≤ dist x y
-- Metric.infDist_le_infDist_of_subset
theorem infDist_le_infDist_of_subset (h : s ⊆ t) (hs : s.Nonempty) : infDist x t ≤ infDist x s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α} {x : α} (h : s ⊆ t) (hs : s.Nonempty)
Goal: Metric.infDist x t ≤ Metric.infDist x s
-- Metric.infDist_lt_iff
theorem infDist_lt_iff {r : ℝ} (hs : s.Nonempty) : infDist x s < r ↔ ∃ y ∈ s, dist x y < r 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α} {r : ℝ} (hs : s.Nonempty)
Goal: Metric.infDist x s < r ↔ ∃ y ∈ s, dist x y < r
-- Metric.infDist_le_infDist_add_dist
theorem infDist_le_infDist_add_dist : infDist x s ≤ infDist y s + dist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x y : α}
Goal: Metric.infDist x s ≤ Metric.infDist y s + dist x y
-- Metric.not_mem_of_dist_lt_infDist
theorem not_mem_of_dist_lt_infDist (h : dist x y < infDist x s) : y ∉ s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x y : α} (h : dist x y < Metric.infDist x s)
Goal: y ∉ s
-- Metric.disjoint_ball_infDist
theorem disjoint_ball_infDist : Disjoint (ball x (infDist x s)) s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α}
Goal: Disjoint (Metric.ball x (Metric.infDist x s)) s
-- Metric.ball_infDist_subset_compl
theorem ball_infDist_subset_compl : ball x (infDist x s) ⊆ sᶜ 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α}
Goal: Metric.ball x (Metric.infDist x s) ⊆ sᶜ
-- Metric.ball_infDist_compl_subset
theorem ball_infDist_compl_subset : ball x (infDist x sᶜ) ⊆ s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α}
Goal: Metric.ball x (Metric.infDist x sᶜ) ⊆ s
-- Metric.disjoint_closedBall_of_lt_infDist
theorem disjoint_closedBall_of_lt_infDist {r : ℝ} (h : r < infDist x s) :
    Disjoint (closedBall x r) s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α} {r : ℝ} (h : r < Metric.infDist x s)
Goal: Disjoint (Metric.closedBall x r) s
-- Metric.dist_le_infDist_add_diam
theorem dist_le_infDist_add_diam (hs : IsBounded s) (hy : y ∈ s) :
    dist x y ≤ infDist x s + diam s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x y : α} (hs : Bornology.IsBounded s) (hy : y ∈ s)
Goal: dist x y ≤ Metric.infDist x s + Metric.diam s
-- Metric.lipschitz_infDist_pt
theorem lipschitz_infDist_pt : LipschitzWith 1 (infDist · s) 
Arguments: {α : Type u} [PseudoMetricSpace α] (s : Set α)
Goal: LipschitzWith 1 fun x => Metric.infDist x s
-- Metric.uniformContinuous_infDist_pt
theorem uniformContinuous_infDist_pt : UniformContinuous (infDist · s) 
Arguments: {α : Type u} [PseudoMetricSpace α] (s : Set α)
Goal: UniformContinuous fun x => Metric.infDist x s
-- Metric.continuous_infDist_pt
@[continuity]
theorem continuous_infDist_pt : Continuous (infDist · s) 
Arguments: {α : Type u} [PseudoMetricSpace α] (s : Set α)
Goal: Continuous fun x => Metric.infDist x s
-- Metric.infDist_closure
theorem infDist_closure : infDist x (closure s) = infDist x s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α}
Goal: Metric.infDist x (closure s) = Metric.infDist x s
-- Metric.infDist_zero_of_mem_closure
theorem infDist_zero_of_mem_closure (hx : x ∈ closure s) : infDist x s = 0 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α} (hx : x ∈ closure s)
Goal: Metric.infDist x s = 0
-- Metric.mem_closure_iff_infDist_zero
theorem mem_closure_iff_infDist_zero (h : s.Nonempty) : x ∈ closure s ↔ infDist x s = 0 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α} (h : s.Nonempty)
Goal: x ∈ closure s ↔ Metric.infDist x s = 0
-- IsClosed.mem_iff_infDist_zero
theorem _root_.IsClosed.mem_iff_infDist_zero (h : IsClosed s) (hs : s.Nonempty) :
    x ∈ s ↔ infDist x s = 0 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α} (h : IsClosed s) (hs : s.Nonempty)
Goal: x ∈ s ↔ Metric.infDist x s = 0
-- IsClosed.not_mem_iff_infDist_pos
theorem _root_.IsClosed.not_mem_iff_infDist_pos (h : IsClosed s) (hs : s.Nonempty) :
    x ∉ s ↔ 0 < infDist x s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α} (h : IsClosed s) (hs : s.Nonempty)
Goal: x ∉ s ↔ 0 < Metric.infDist x s
-- Metric.continuousAt_inv_infDist_pt
theorem continuousAt_inv_infDist_pt (h : x ∉ closure s) :
    ContinuousAt (fun x ↦ (infDist x s)⁻¹) x 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α} (h : x ∉ closure s)
Goal: ContinuousAt (fun x => (Metric.infDist x s)⁻¹) x
-- Metric.infDist_image
theorem infDist_image (hΦ : Isometry Φ) : infDist (Φ x) (Φ '' t) = infDist x t 
Arguments: {α : Type u} {β : Type v} [PseudoMetricSpace α] [PseudoMetricSpace β] {t : Set α} {x : α} {Φ : α → β} (hΦ : Isometry Φ)
Goal: Metric.infDist (Φ x) (Φ '' t) = Metric.infDist x t
-- Metric.infDist_inter_closedBall_of_mem
theorem infDist_inter_closedBall_of_mem (h : y ∈ s) :
    infDist x (s ∩ closedBall x (dist y x)) = infDist x s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x y : α} (h : y ∈ s)
Goal: Metric.infDist x (s ∩ Metric.closedBall x (dist y x)) = Metric.infDist x s
-- IsCompact.exists_infDist_eq_dist
theorem _root_.IsCompact.exists_infDist_eq_dist (h : IsCompact s) (hne : s.Nonempty) (x : α) :
    ∃ y ∈ s, infDist x s = dist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} (h : IsCompact s) (hne : s.Nonempty) (x : α)
Goal: ∃ y ∈ s, Metric.infDist x s = dist x y
-- IsClosed.exists_infDist_eq_dist
theorem _root_.IsClosed.exists_infDist_eq_dist [ProperSpace α] (h : IsClosed s) (hne : s.Nonempty)
    (x : α) : ∃ y ∈ s, infDist x s = dist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} [ProperSpace α] (h : IsClosed s) (hne : s.Nonempty) (x : α)
Goal: ∃ y ∈ s, Metric.infDist x s = dist x y
-- Metric.exists_mem_closure_infDist_eq_dist
theorem exists_mem_closure_infDist_eq_dist [ProperSpace α] (hne : s.Nonempty) (x : α) :
    ∃ y ∈ closure s, infDist x s = dist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} [ProperSpace α] (hne : s.Nonempty) (x : α)
Goal: ∃ y ∈ closure s, Metric.infDist x s = dist x y
-- Metric.coe_infNndist
@[simp]
theorem coe_infNndist : (infNndist x s : ℝ) = infDist x s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α} {x : α}
Goal: ↑(Metric.infNndist x s) = Metric.infDist x s
-- Metric.lipschitz_infNndist_pt
theorem lipschitz_infNndist_pt (s : Set α) : LipschitzWith 1 fun x => infNndist x s 
Arguments: {α : Type u} [PseudoMetricSpace α] (s : Set α)
Goal: LipschitzWith 1 fun x => Metric.infNndist x s
-- Metric.uniformContinuous_infNndist_pt
theorem uniformContinuous_infNndist_pt (s : Set α) : UniformContinuous fun x => infNndist x s 
Arguments: {α : Type u} [PseudoMetricSpace α] (s : Set α)
Goal: UniformContinuous fun x => Metric.infNndist x s
-- Metric.continuous_infNndist_pt
theorem continuous_infNndist_pt (s : Set α) : Continuous fun x => infNndist x s 
Arguments: {α : Type u} [PseudoMetricSpace α] (s : Set α)
Goal: Continuous fun x => Metric.infNndist x s
-- Metric.hausdorffDist_nonneg
theorem hausdorffDist_nonneg : 0 ≤ hausdorffDist s t 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α}
Goal: 0 ≤ Metric.hausdorffDist s t
-- Metric.hausdorffEdist_ne_top_of_nonempty_of_bounded
theorem hausdorffEdist_ne_top_of_nonempty_of_bounded (hs : s.Nonempty) (ht : t.Nonempty)
    (bs : IsBounded s) (bt : IsBounded t) : hausdorffEdist s t ≠ ⊤ 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α} (hs : s.Nonempty) (ht : t.Nonempty) (bs : Bornology.IsBounded s) (bt : Bornology.IsBounded t)
Goal: EMetric.hausdorffEdist s t ≠ ⊤
-- Metric.hausdorffDist_self_zero
@[simp]
theorem hausdorffDist_self_zero : hausdorffDist s s = 0 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α}
Goal: Metric.hausdorffDist s s = 0
-- Metric.hausdorffDist_comm
theorem hausdorffDist_comm : hausdorffDist s t = hausdorffDist t s 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α}
Goal: Metric.hausdorffDist s t = Metric.hausdorffDist t s
-- Metric.hausdorffDist_empty
@[simp]
theorem hausdorffDist_empty : hausdorffDist s ∅ = 0 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α}
Goal: Metric.hausdorffDist s ∅ = 0
-- Metric.hausdorffDist_empty'
@[simp]
theorem hausdorffDist_empty' : hausdorffDist ∅ s = 0 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α}
Goal: Metric.hausdorffDist ∅ s = 0
-- Metric.hausdorffDist_le_of_infDist
theorem hausdorffDist_le_of_infDist {r : ℝ} (hr : 0 ≤ r) (H1 : ∀ x ∈ s, infDist x t ≤ r)
    (H2 : ∀ x ∈ t, infDist x s ≤ r) : hausdorffDist s t ≤ r 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α} {r : ℝ} (hr : 0 ≤ r) (H1 : ∀ x ∈ s, Metric.infDist x t ≤ r) (H2 : ∀ x ∈ t, Metric.infDist x s ≤ r)
Goal: Metric.hausdorffDist s t ≤ r
-- Metric.hausdorffDist_le_of_mem_dist
theorem hausdorffDist_le_of_mem_dist {r : ℝ} (hr : 0 ≤ r) (H1 : ∀ x ∈ s, ∃ y ∈ t, dist x y ≤ r)
    (H2 : ∀ x ∈ t, ∃ y ∈ s, dist x y ≤ r) : hausdorffDist s t ≤ r 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α} {r : ℝ} (hr : 0 ≤ r) (H1 : ∀ x ∈ s, ∃ y ∈ t, dist x y ≤ r) (H2 : ∀ x ∈ t, ∃ y ∈ s, dist x y ≤ r)
Goal: Metric.hausdorffDist s t ≤ r
-- Metric.hausdorffDist_le_diam
theorem hausdorffDist_le_diam (hs : s.Nonempty) (bs : IsBounded s) (ht : t.Nonempty)
    (bt : IsBounded t) : hausdorffDist s t ≤ diam (s ∪ t) 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α} (hs : s.Nonempty) (bs : Bornology.IsBounded s) (ht : t.Nonempty) (bt : Bornology.IsBounded t)
Goal: Metric.hausdorffDist s t ≤ Metric.diam (s ∪ t)
-- Metric.infDist_le_hausdorffDist_of_mem
theorem infDist_le_hausdorffDist_of_mem (hx : x ∈ s) (fin : hausdorffEdist s t ≠ ⊤) :
    infDist x t ≤ hausdorffDist s t 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α} {x : α} (hx : x ∈ s) (fin : EMetric.hausdorffEdist s t ≠ ⊤)
Goal: Metric.infDist x t ≤ Metric.hausdorffDist s t
-- Metric.exists_dist_lt_of_hausdorffDist_lt
theorem exists_dist_lt_of_hausdorffDist_lt {r : ℝ} (h : x ∈ s) (H : hausdorffDist s t < r)
    (fin : hausdorffEdist s t ≠ ⊤) : ∃ y ∈ t, dist x y < r 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α} {x : α} {r : ℝ} (h : x ∈ s) (H : Metric.hausdorffDist s t < r) (fin : EMetric.hausdorffEdist s t ≠ ⊤)
Goal: ∃ y ∈ t, dist x y < r
-- Metric.exists_dist_lt_of_hausdorffDist_lt'
theorem exists_dist_lt_of_hausdorffDist_lt' {r : ℝ} (h : y ∈ t) (H : hausdorffDist s t < r)
    (fin : hausdorffEdist s t ≠ ⊤) : ∃ x ∈ s, dist x y < r 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α} {y : α} {r : ℝ} (h : y ∈ t) (H : Metric.hausdorffDist s t < r) (fin : EMetric.hausdorffEdist s t ≠ ⊤)
Goal: ∃ x ∈ s, dist x y < r
-- Metric.infDist_le_infDist_add_hausdorffDist
theorem infDist_le_infDist_add_hausdorffDist (fin : hausdorffEdist s t ≠ ⊤) :
    infDist x t ≤ infDist x s + hausdorffDist s t 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α} {x : α} (fin : EMetric.hausdorffEdist s t ≠ ⊤)
Goal: Metric.infDist x t ≤ Metric.infDist x s + Metric.hausdorffDist s t
-- Metric.hausdorffDist_image
theorem hausdorffDist_image (h : Isometry Φ) :
    hausdorffDist (Φ '' s) (Φ '' t) = hausdorffDist s t 
Arguments: {α : Type u} {β : Type v} [PseudoMetricSpace α] [PseudoMetricSpace β] {s t : Set α} {Φ : α → β} (h : Isometry Φ)
Goal: Metric.hausdorffDist (Φ '' s) (Φ '' t) = Metric.hausdorffDist s t
-- Metric.hausdorffDist_triangle
theorem hausdorffDist_triangle (fin : hausdorffEdist s t ≠ ⊤) :
    hausdorffDist s u ≤ hausdorffDist s t + hausdorffDist t u 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t u : Set α} (fin : EMetric.hausdorffEdist s t ≠ ⊤)
Goal: Metric.hausdorffDist s u ≤ Metric.hausdorffDist s t + Metric.hausdorffDist t u
-- Metric.hausdorffDist_triangle'
theorem hausdorffDist_triangle' (fin : hausdorffEdist t u ≠ ⊤) :
    hausdorffDist s u ≤ hausdorffDist s t + hausdorffDist t u 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t u : Set α} (fin : EMetric.hausdorffEdist t u ≠ ⊤)
Goal: Metric.hausdorffDist s u ≤ Metric.hausdorffDist s t + Metric.hausdorffDist t u
-- Metric.hausdorffDist_self_closure
@[simp]
theorem hausdorffDist_self_closure : hausdorffDist s (closure s) = 0 
Arguments: {α : Type u} [PseudoMetricSpace α] {s : Set α}
Goal: Metric.hausdorffDist s (closure s) = 0
-- Metric.hausdorffDist_closure₁
@[simp]
theorem hausdorffDist_closure₁ : hausdorffDist (closure s) t = hausdorffDist s t 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α}
Goal: Metric.hausdorffDist (closure s) t = Metric.hausdorffDist s t
-- Metric.hausdorffDist_closure₂
@[simp]
theorem hausdorffDist_closure₂ : hausdorffDist s (closure t) = hausdorffDist s t 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α}
Goal: Metric.hausdorffDist s (closure t) = Metric.hausdorffDist s t
-- Metric.hausdorffDist_closure
-- @[simp] -- Porting note (#10618): simp can prove this
theorem hausdorffDist_closure : hausdorffDist (closure s) (closure t) = hausdorffDist s t 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α}
Goal: Metric.hausdorffDist (closure s) (closure t) = Metric.hausdorffDist s t
-- Metric.hausdorffDist_zero_iff_closure_eq_closure
theorem hausdorffDist_zero_iff_closure_eq_closure (fin : hausdorffEdist s t ≠ ⊤) :
    hausdorffDist s t = 0 ↔ closure s = closure t 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α} (fin : EMetric.hausdorffEdist s t ≠ ⊤)
Goal: Metric.hausdorffDist s t = 0 ↔ closure s = closure t
-- IsClosed.hausdorffDist_zero_iff_eq
theorem _root_.IsClosed.hausdorffDist_zero_iff_eq (hs : IsClosed s) (ht : IsClosed t)
    (fin : hausdorffEdist s t ≠ ⊤) : hausdorffDist s t = 0 ↔ s = t 
Arguments: {α : Type u} [PseudoMetricSpace α] {s t : Set α} (hs : IsClosed s) (ht : IsClosed t) (fin : EMetric.hausdorffEdist s t ≠ ⊤)
Goal: Metric.hausdorffDist s t = 0 ↔ s = t
-- PartitionOfUnity.locallyFinite'
structure PartitionOfUnity (ι X : Type*) [TopologicalSpace X] (s : Set X := univ) where
    toFun : ι → C(X, ℝ)
    locallyFinite' : LocallyFinite fun i => support (toFun i)
    nonneg' : 0 ≤ toFun
    sum_eq_one' : ∀ x ∈ s, ∑ᶠ i, toFun i x = 1
    sum_le_one' : ∀ x, ∑ᶠ i, toFun i x ≤ 1
Arguments: {ι : Type u_1} {X : Type u_2} [TopologicalSpace X] {s : optParam (Set X) Set.univ} (self : PartitionOfUnity ι X s)
Goal: LocallyFinite fun i => Function.support ⇑(self.toFun i)
-- PartitionOfUnity.sum_le_one'
structure PartitionOfUnity (ι X : Type*) [TopologicalSpace X] (s : Set X := univ) where
    toFun : ι → C(X, ℝ)
    locallyFinite' : LocallyFinite fun i => support (toFun i)
    nonneg' : 0 ≤ toFun
    sum_eq_one' : ∀ x ∈ s, ∑ᶠ i, toFun i x = 1
    sum_le_one' : ∀ x, ∑ᶠ i, toFun i x ≤ 1
Arguments: {ι : Type u_1} {X : Type u_2} [TopologicalSpace X] {s : optParam (Set X) Set.univ} (self : PartitionOfUnity ι X s) (x : X)
Goal: ∑ᶠ (i : ι), (self.toFun i) x ≤ 1
-- PartitionOfUnity.sum_eq_one'
structure PartitionOfUnity (ι X : Type*) [TopologicalSpace X] (s : Set X := univ) where
    toFun : ι → C(X, ℝ)
    locallyFinite' : LocallyFinite fun i => support (toFun i)
    nonneg' : 0 ≤ toFun
    sum_eq_one' : ∀ x ∈ s, ∑ᶠ i, toFun i x = 1
    sum_le_one' : ∀ x, ∑ᶠ i, toFun i x ≤ 1
Arguments: {ι : Type u_1} {X : Type u_2} [TopologicalSpace X] {s : optParam (Set X) Set.univ} (self : PartitionOfUnity ι X s) (x : X)
Goal: x ∈ s → ∑ᶠ (i : ι), (self.toFun i) x = 1
-- PartitionOfUnity.nonneg'
structure PartitionOfUnity (ι X : Type*) [TopologicalSpace X] (s : Set X := univ) where
    toFun : ι → C(X, ℝ)
    locallyFinite' : LocallyFinite fun i => support (toFun i)
    nonneg' : 0 ≤ toFun
    sum_eq_one' : ∀ x ∈ s, ∑ᶠ i, toFun i x = 1
    sum_le_one' : ∀ x, ∑ᶠ i, toFun i x ≤ 1
Arguments: {ι : Type u_1} {X : Type u_2} [TopologicalSpace X] {s : optParam (Set X) Set.univ} (self : PartitionOfUnity ι X s)
Goal: 0 ≤ self.toFun
-- BumpCovering.nonneg'
structure BumpCovering (ι X : Type*) [TopologicalSpace X] (s : Set X := univ) where
    toFun : ι → C(X, ℝ)
    locallyFinite' : LocallyFinite fun i => support (toFun i)
    nonneg' : 0 ≤ toFun
    le_one' : toFun ≤ 1
    eventuallyEq_one' : ∀ x ∈ s, ∃ i, toFun i =ᶠ[𝓝 x] 1
Arguments: {ι : Type u_1} {X : Type u_2} [TopologicalSpace X] {s : optParam (Set X) Set.univ} (self : BumpCovering ι X s)
Goal: 0 ≤ self.toFun
-- BumpCovering.locallyFinite'
structure BumpCovering (ι X : Type*) [TopologicalSpace X] (s : Set X := univ) where
    toFun : ι → C(X, ℝ)
    locallyFinite' : LocallyFinite fun i => support (toFun i)
    nonneg' : 0 ≤ toFun
    le_one' : toFun ≤ 1
    eventuallyEq_one' : ∀ x ∈ s, ∃ i, toFun i =ᶠ[𝓝 x] 1
Arguments: {ι : Type u_1} {X : Type u_2} [TopologicalSpace X] {s : optParam (Set X) Set.univ} (self : BumpCovering ι X s)
Goal: LocallyFinite fun i => Function.support ⇑(self.toFun i)
-- BumpCovering.eventuallyEq_one'
structure BumpCovering (ι X : Type*) [TopologicalSpace X] (s : Set X := univ) where
    toFun : ι → C(X, ℝ)
    locallyFinite' : LocallyFinite fun i => support (toFun i)
    nonneg' : 0 ≤ toFun
    le_one' : toFun ≤ 1
    eventuallyEq_one' : ∀ x ∈ s, ∃ i, toFun i =ᶠ[𝓝 x] 1
Arguments: {ι : Type u_1} {X : Type u_2} [TopologicalSpace X] {s : optParam (Set X) Set.univ} (self : BumpCovering ι X s) (x : X)
Goal: x ∈ s → ∃ i, ⇑(self.toFun i) =ᶠ[𝓝 x] 1
-- BumpCovering.le_one'
structure BumpCovering (ι X : Type*) [TopologicalSpace X] (s : Set X := univ) where
    toFun : ι → C(X, ℝ)
    locallyFinite' : LocallyFinite fun i => support (toFun i)
    nonneg' : 0 ≤ toFun
    le_one' : toFun ≤ 1
    eventuallyEq_one' : ∀ x ∈ s, ∃ i, toFun i =ᶠ[𝓝 x] 1
Arguments: {ι : Type u_1} {X : Type u_2} [TopologicalSpace X] {s : optParam (Set X) Set.univ} (self : BumpCovering ι X s)
Goal: self.toFun ≤ 1
-- PartitionOfUnity.locallyFinite
protected theorem locallyFinite : LocallyFinite fun i => support (f i) 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (f : PartitionOfUnity ι X s)
Goal: LocallyFinite fun i => Function.support ⇑(f i)
-- PartitionOfUnity.locallyFinite_tsupport
theorem locallyFinite_tsupport : LocallyFinite fun i => tsupport (f i) 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (f : PartitionOfUnity ι X s)
Goal: LocallyFinite fun i => tsupport ⇑(f i)
-- PartitionOfUnity.nonneg
theorem nonneg (i : ι) (x : X) : 0 ≤ f i x 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (f : PartitionOfUnity ι X s) (i : ι) (x : X)
Goal: 0 ≤ (f i) x
-- PartitionOfUnity.sum_eq_one
theorem sum_eq_one {x : X} (hx : x ∈ s) : ∑ᶠ i, f i x = 1 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (f : PartitionOfUnity ι X s) {x : X} (hx : x ∈ s)
Goal: ∑ᶠ (i : ι), (f i) x = 1
-- PartitionOfUnity.exists_pos
theorem exists_pos {x : X} (hx : x ∈ s) : ∃ i, 0 < f i x 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (f : PartitionOfUnity ι X s) {x : X} (hx : x ∈ s)
Goal: ∃ i, 0 < (f i) x
-- PartitionOfUnity.sum_le_one
theorem sum_le_one (x : X) : ∑ᶠ i, f i x ≤ 1 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (f : PartitionOfUnity ι X s) (x : X)
Goal: ∑ᶠ (i : ι), (f i) x ≤ 1
-- PartitionOfUnity.sum_nonneg
theorem sum_nonneg (x : X) : 0 ≤ ∑ᶠ i, f i x 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (f : PartitionOfUnity ι X s) (x : X)
Goal: 0 ≤ ∑ᶠ (i : ι), (f i) x
-- PartitionOfUnity.le_one
theorem le_one (i : ι) (x : X) : f i x ≤ 1 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (f : PartitionOfUnity ι X s) (i : ι) (x : X)
Goal: (f i) x ≤ 1
-- PartitionOfUnity.mem_finsupport
@[simp]
theorem mem_finsupport (x₀ : X) {i} :
    i ∈ ρ.finsupport x₀ ↔ i ∈ support fun i ↦ ρ i x₀ 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (ρ : PartitionOfUnity ι X s) (x₀ : X) {i : ι}
Goal: i ∈ ρ.finsupport x₀ ↔ i ∈ Function.support fun i => (ρ i) x₀
-- PartitionOfUnity.coe_finsupport
@[simp]
theorem coe_finsupport (x₀ : X) :
    (ρ.finsupport x₀ : Set ι) = support fun i ↦ ρ i x₀ 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (ρ : PartitionOfUnity ι X s) (x₀ : X)
Goal: ↑(ρ.finsupport x₀) = Function.support fun i => (ρ i) x₀
-- PartitionOfUnity.sum_finsupport
theorem sum_finsupport (hx₀ : x₀ ∈ s) : ∑ i ∈ ρ.finsupport x₀, ρ i x₀ = 1 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (ρ : PartitionOfUnity ι X s) {x₀ : X} (hx₀ : x₀ ∈ s)
Goal: ∑ i ∈ ρ.finsupport x₀, (ρ i) x₀ = 1
-- PartitionOfUnity.sum_finsupport'
theorem sum_finsupport' (hx₀ : x₀ ∈ s) {I : Finset ι} (hI : ρ.finsupport x₀ ⊆ I) :
    ∑ i ∈ I, ρ i x₀ = 1 
Arguments: {ι : Type u} {X : Type v} [TopologicalSpace X] {s : Set X} (ρ : PartitionOfUnity ι X s) {x₀ : X} (hx₀ : x₀ ∈ s) {I : Finset ι} (hI : ρ.finsupport x₀ ⊆ I)
Goal: ∑ i ∈ I, (ρ i) x₀ = 1