ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Disjoint.exists_cthickenings
theorem _root_.Disjoint.exists_cthickenings (hst : Disjoint s t) (hs : IsCompact s)
    (ht : IsClosed t) :
    ∃ δ, 0 < δ ∧ Disjoint (cthickening δ s) (cthickening δ t) 
Arguments: {α : Type u} [PseudoEMetricSpace α] {s t : Set α} (hst : Disjoint s t) (hs : IsCompact s) (ht : IsClosed t)
Goal: ∃ δ, 0 < δ ∧ Disjoint (Metric.cthickening δ s) (Metric.cthickening δ t)
-- IsCompact.exists_cthickening_subset_open
theorem _root_.IsCompact.exists_cthickening_subset_open (hs : IsCompact s) (ht : IsOpen t)
    (hst : s ⊆ t) :
    ∃ δ, 0 < δ ∧ cthickening δ s ⊆ t 
Arguments: {α : Type u} [PseudoEMetricSpace α] {s t : Set α} (hs : IsCompact s) (ht : IsOpen t) (hst : s ⊆ t)
Goal: ∃ δ, 0 < δ ∧ Metric.cthickening δ s ⊆ t
-- IsCompact.exists_isCompact_cthickening
theorem _root_.IsCompact.exists_isCompact_cthickening [LocallyCompactSpace α] (hs : IsCompact s) :
    ∃ δ, 0 < δ ∧ IsCompact (cthickening δ s) 
Arguments: {α : Type u} [PseudoEMetricSpace α] {s : Set α} [LocallyCompactSpace α] (hs : IsCompact s)
Goal: ∃ δ, 0 < δ ∧ IsCompact (Metric.cthickening δ s)
-- IsCompact.exists_thickening_subset_open
theorem _root_.IsCompact.exists_thickening_subset_open (hs : IsCompact s) (ht : IsOpen t)
    (hst : s ⊆ t) : ∃ δ, 0 < δ ∧ thickening δ s ⊆ t 
Arguments: {α : Type u} [PseudoEMetricSpace α] {s t : Set α} (hs : IsCompact s) (ht : IsOpen t) (hst : s ⊆ t)
Goal: ∃ δ, 0 < δ ∧ Metric.thickening δ s ⊆ t
-- Metric.hasBasis_nhdsSet_thickening
theorem hasBasis_nhdsSet_thickening {K : Set α} (hK : IsCompact K) :
    (𝓝ˢ K).HasBasis (fun δ : ℝ => 0 < δ) fun δ => thickening δ K 
Arguments: {α : Type u} [PseudoEMetricSpace α] {K : Set α} (hK : IsCompact K)
Goal: (𝓝ˢ K).HasBasis (fun δ => 0 < δ) fun δ => Metric.thickening δ K
-- Metric.hasBasis_nhdsSet_cthickening
theorem hasBasis_nhdsSet_cthickening {K : Set α} (hK : IsCompact K) :
    (𝓝ˢ K).HasBasis (fun δ : ℝ => 0 < δ) fun δ => cthickening δ K 
Arguments: {α : Type u} [PseudoEMetricSpace α] {K : Set α} (hK : IsCompact K)
Goal: (𝓝ˢ K).HasBasis (fun δ => 0 < δ) fun δ => Metric.cthickening δ K
-- Metric.cthickening_eq_iInter_cthickening'
theorem cthickening_eq_iInter_cthickening' {δ : ℝ} (s : Set ℝ) (hsδ : s ⊆ Ioi δ)
    (hs : ∀ ε, δ < ε → (s ∩ Ioc δ ε).Nonempty) (E : Set α) :
    cthickening δ E = ⋂ ε ∈ s, cthickening ε E 
Arguments: {α : Type u} [PseudoEMetricSpace α] {δ : ℝ} (s : Set ℝ) (hsδ : s ⊆ Set.Ioi δ) (hs : ∀ (ε : ℝ), δ < ε → (s ∩ Set.Ioc δ ε).Nonempty) (E : Set α)
Goal: Metric.cthickening δ E = ⋂ ε ∈ s, Metric.cthickening ε E
-- Metric.cthickening_eq_iInter_cthickening
theorem cthickening_eq_iInter_cthickening {δ : ℝ} (E : Set α) :
    cthickening δ E = ⋂ (ε : ℝ) (_ : δ < ε), cthickening ε E 
Arguments: {α : Type u} [PseudoEMetricSpace α] {δ : ℝ} (E : Set α)
Goal: Metric.cthickening δ E = ⋂ ε, ⋂ (_ : δ < ε), Metric.cthickening ε E
-- Metric.cthickening_eq_iInter_thickening'
theorem cthickening_eq_iInter_thickening' {δ : ℝ} (δ_nn : 0 ≤ δ) (s : Set ℝ) (hsδ : s ⊆ Ioi δ)
    (hs : ∀ ε, δ < ε → (s ∩ Ioc δ ε).Nonempty) (E : Set α) :
    cthickening δ E = ⋂ ε ∈ s, thickening ε E 
Arguments: {α : Type u} [PseudoEMetricSpace α] {δ : ℝ} (δ_nn : 0 ≤ δ) (s : Set ℝ) (hsδ : s ⊆ Set.Ioi δ) (hs : ∀ (ε : ℝ), δ < ε → (s ∩ Set.Ioc δ ε).Nonempty) (E : Set α)
Goal: Metric.cthickening δ E = ⋂ ε ∈ s, Metric.thickening ε E
-- Metric.cthickening_eq_iInter_thickening
theorem cthickening_eq_iInter_thickening {δ : ℝ} (δ_nn : 0 ≤ δ) (E : Set α) :
    cthickening δ E = ⋂ (ε : ℝ) (_ : δ < ε), thickening ε E 
Arguments: {α : Type u} [PseudoEMetricSpace α] {δ : ℝ} (δ_nn : 0 ≤ δ) (E : Set α)
Goal: Metric.cthickening δ E = ⋂ ε, ⋂ (_ : δ < ε), Metric.thickening ε E
-- Metric.cthickening_eq_iInter_thickening''
theorem cthickening_eq_iInter_thickening'' (δ : ℝ) (E : Set α) :
    cthickening δ E = ⋂ (ε : ℝ) (_ : max 0 δ < ε), thickening ε E 
Arguments: {α : Type u} [PseudoEMetricSpace α] (δ : ℝ) (E : Set α)
Goal: Metric.cthickening δ E = ⋂ ε, ⋂ (_ : max 0 δ < ε), Metric.thickening ε E
-- Metric.closure_eq_iInter_cthickening'
theorem closure_eq_iInter_cthickening' (E : Set α) (s : Set ℝ)
    (hs : ∀ ε, 0 < ε → (s ∩ Ioc 0 ε).Nonempty) : closure E = ⋂ δ ∈ s, cthickening δ E 
Arguments: {α : Type u} [PseudoEMetricSpace α] (E : Set α) (s : Set ℝ) (hs : ∀ (ε : ℝ), 0 < ε → (s ∩ Set.Ioc 0 ε).Nonempty)
Goal: closure E = ⋂ δ ∈ s, Metric.cthickening δ E
-- Metric.closure_eq_iInter_cthickening
theorem closure_eq_iInter_cthickening (E : Set α) :
    closure E = ⋂ (δ : ℝ) (_ : 0 < δ), cthickening δ E 
Arguments: {α : Type u} [PseudoEMetricSpace α] (E : Set α)
Goal: closure E = ⋂ δ, ⋂ (_ : 0 < δ), Metric.cthickening δ E
-- Metric.closure_eq_iInter_thickening'
theorem closure_eq_iInter_thickening' (E : Set α) (s : Set ℝ) (hs₀ : s ⊆ Ioi 0)
    (hs : ∀ ε, 0 < ε → (s ∩ Ioc 0 ε).Nonempty) : closure E = ⋂ δ ∈ s, thickening δ E 
Arguments: {α : Type u} [PseudoEMetricSpace α] (E : Set α) (s : Set ℝ) (hs₀ : s ⊆ Set.Ioi 0) (hs : ∀ (ε : ℝ), 0 < ε → (s ∩ Set.Ioc 0 ε).Nonempty)
Goal: closure E = ⋂ δ ∈ s, Metric.thickening δ E
-- Metric.closure_eq_iInter_thickening
theorem closure_eq_iInter_thickening (E : Set α) :
    closure E = ⋂ (δ : ℝ) (_ : 0 < δ), thickening δ E 
Arguments: {α : Type u} [PseudoEMetricSpace α] (E : Set α)
Goal: closure E = ⋂ δ, ⋂ (_ : 0 < δ), Metric.thickening δ E
-- Metric.frontier_cthickening_subset
theorem frontier_cthickening_subset (E : Set α) {δ : ℝ} :
    frontier (cthickening δ E) ⊆ { x : α | infEdist x E = ENNReal.ofReal δ } 
Arguments: {α : Type u} [PseudoEMetricSpace α] (E : Set α) {δ : ℝ}
Goal: frontier (Metric.cthickening δ E) ⊆ {x | EMetric.infEdist x E = ENNReal.ofReal δ}
-- Metric.closedBall_subset_cthickening
theorem closedBall_subset_cthickening {α : Type*} [PseudoMetricSpace α] {x : α} {E : Set α}
    (hx : x ∈ E) (δ : ℝ) : closedBall x δ ⊆ cthickening δ E 
Arguments: {α : Type u_2} [PseudoMetricSpace α] {x : α} {E : Set α} (hx : x ∈ E) (δ : ℝ)
Goal: Metric.closedBall x δ ⊆ Metric.cthickening δ E
-- Metric.cthickening_subset_iUnion_closedBall_of_lt
theorem cthickening_subset_iUnion_closedBall_of_lt {α : Type*} [PseudoMetricSpace α] (E : Set α)
    {δ δ' : ℝ} (hδ₀ : 0 < δ') (hδδ' : δ < δ') : cthickening δ E ⊆ ⋃ x ∈ E, closedBall x δ' 
Arguments: {α : Type u_2} [PseudoMetricSpace α] (E : Set α) {δ δ' : ℝ} (hδ₀ : 0 < δ') (hδδ' : δ < δ')
Goal: Metric.cthickening δ E ⊆ ⋃ x ∈ E, Metric.closedBall x δ'
-- IsCompact.cthickening_eq_biUnion_closedBall
theorem _root_.IsCompact.cthickening_eq_biUnion_closedBall {α : Type*} [PseudoMetricSpace α]
    {δ : ℝ} {E : Set α} (hE : IsCompact E) (hδ : 0 ≤ δ) :
    cthickening δ E = ⋃ x ∈ E, closedBall x δ 
Arguments: {α : Type u_2} [PseudoMetricSpace α] {δ : ℝ} {E : Set α} (hE : IsCompact E) (hδ : 0 ≤ δ)
Goal: Metric.cthickening δ E = ⋃ x ∈ E, Metric.closedBall x δ
-- Metric.cthickening_eq_biUnion_closedBall
theorem cthickening_eq_biUnion_closedBall {α : Type*} [PseudoMetricSpace α] [ProperSpace α]
    (E : Set α) (hδ : 0 ≤ δ) : cthickening δ E = ⋃ x ∈ closure E, closedBall x δ 
Arguments: {δ : ℝ} {α : Type u_2} [PseudoMetricSpace α] [ProperSpace α] (E : Set α) (hδ : 0 ≤ δ)
Goal: Metric.cthickening δ E = ⋃ x ∈ closure E, Metric.closedBall x δ
-- IsClosed.cthickening_eq_biUnion_closedBall
nonrec theorem _root_.IsClosed.cthickening_eq_biUnion_closedBall {α : Type*} [PseudoMetricSpace α]
    [ProperSpace α] {E : Set α} (hE : IsClosed E) (hδ : 0 ≤ δ) :
    cthickening δ E = ⋃ x ∈ E, closedBall x δ 
Arguments: {δ : ℝ} {α : Type u_2} [PseudoMetricSpace α] [ProperSpace α] {E : Set α} (hE : IsClosed E) (hδ : 0 ≤ δ)
Goal: Metric.cthickening δ E = ⋃ x ∈ E, Metric.closedBall x δ
-- Metric.infEdist_le_infEdist_cthickening_add
theorem infEdist_le_infEdist_cthickening_add :
    infEdist x s ≤ infEdist x (cthickening δ s) + ENNReal.ofReal δ 
Arguments: {α : Type u} [PseudoEMetricSpace α] {δ : ℝ} {s : Set α} {x : α}
Goal: EMetric.infEdist x s ≤ EMetric.infEdist x (Metric.cthickening δ s) + ENNReal.ofReal δ
-- Metric.infEdist_le_infEdist_thickening_add
theorem infEdist_le_infEdist_thickening_add :
    infEdist x s ≤ infEdist x (thickening δ s) + ENNReal.ofReal δ 
Arguments: {α : Type u} [PseudoEMetricSpace α] {δ : ℝ} {s : Set α} {x : α}
Goal: EMetric.infEdist x s ≤ EMetric.infEdist x (Metric.thickening δ s) + ENNReal.ofReal δ
-- Metric.thickening_thickening_subset
@[simp]
theorem thickening_thickening_subset (ε δ : ℝ) (s : Set α) :
    thickening ε (thickening δ s) ⊆ thickening (ε + δ) s 
Arguments: {α : Type u} [PseudoEMetricSpace α] (ε δ : ℝ) (s : Set α)
Goal: Metric.thickening ε (Metric.thickening δ s) ⊆ Metric.thickening (ε + δ) s
-- Metric.thickening_cthickening_subset
@[simp]
theorem thickening_cthickening_subset (ε : ℝ) (hδ : 0 ≤ δ) (s : Set α) :
    thickening ε (cthickening δ s) ⊆ thickening (ε + δ) s 
Arguments: {α : Type u} [PseudoEMetricSpace α] {δ : ℝ} (ε : ℝ) (hδ : 0 ≤ δ) (s : Set α)
Goal: Metric.thickening ε (Metric.cthickening δ s) ⊆ Metric.thickening (ε + δ) s
-- Metric.cthickening_thickening_subset
@[simp]
theorem cthickening_thickening_subset (hε : 0 ≤ ε) (δ : ℝ) (s : Set α) :
    cthickening ε (thickening δ s) ⊆ cthickening (ε + δ) s 
Arguments: {α : Type u} [PseudoEMetricSpace α] {ε : ℝ} (hε : 0 ≤ ε) (δ : ℝ) (s : Set α)
Goal: Metric.cthickening ε (Metric.thickening δ s) ⊆ Metric.cthickening (ε + δ) s
-- Metric.cthickening_cthickening_subset
@[simp]
theorem cthickening_cthickening_subset (hε : 0 ≤ ε) (hδ : 0 ≤ δ) (s : Set α) :
    cthickening ε (cthickening δ s) ⊆ cthickening (ε + δ) s 
Arguments: {α : Type u} [PseudoEMetricSpace α] {δ ε : ℝ} (hε : 0 ≤ ε) (hδ : 0 ≤ δ) (s : Set α)
Goal: Metric.cthickening ε (Metric.cthickening δ s) ⊆ Metric.cthickening (ε + δ) s
-- Metric.frontier_cthickening_disjoint
theorem frontier_cthickening_disjoint (A : Set α) :
    Pairwise (Disjoint on fun r : ℝ≥0 => frontier (cthickening r A)) 
Arguments: {α : Type u} [PseudoEMetricSpace α] (A : Set α)
Goal: Pairwise (Disjoint on fun r => frontier (Metric.cthickening (↑r) A))
-- TopCat.Sheaf.pushforward_sheaf_of_sheaf
theorem pushforward_sheaf_of_sheaf {F : X.Presheaf C} (h : F.IsSheaf) : (f _* F).IsSheaf 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : TopCat} (f : X ⟶ Y) {F : TopCat.Presheaf C X} (h : F.IsSheaf)
Goal: ((TopCat.Presheaf.pushforward C f).obj F).IsSheaf
-- TopCat.Sheaf.pushforward_forget
lemma pushforward_forget (f : X ⟶ Y) :
    pushforward C f ⋙ forget C Y = forget C X ⋙ Presheaf.pushforward C f 
Arguments: (C : Type u) [CategoryTheory.Category.{v, u} C] {X Y : TopCat} (f : X ⟶ Y)
Goal: TopCat.Sheaf.pushforward C f ⋙ TopCat.Sheaf.forget C Y = TopCat.Sheaf.forget C X ⋙ TopCat.Presheaf.pushforward C f
-- TopCat.Sheaf.pushforward_obj_val
@[simp] lemma pushforward_obj_val (f : X ⟶ Y) (F : X.Sheaf C) :
    ((pushforward C f).obj F).1 = f _* F.1 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : TopCat} (f : X ⟶ Y) (F : TopCat.Sheaf C X)
Goal: ((TopCat.Sheaf.pushforward C f).obj F).val = (TopCat.Presheaf.pushforward C f).obj F.val
-- TopCat.Sheaf.pushforward_map
@[simp] lemma pushforward_map (f : X ⟶ Y) {F F' : X.Sheaf C} (α : F ⟶ F') :
    ((pushforward C f).map α).1 = (Presheaf.pushforward C f).map α.1 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : TopCat} (f : X ⟶ Y) {F F' : TopCat.Sheaf C X} (α : F ⟶ F')
Goal: ((TopCat.Sheaf.pushforward C f).map α).val = (TopCat.Presheaf.pushforward C f).map α.val
-- TopCat.Sheaf.pullback_eq
lemma pullback_eq (f : X ⟶ Y) :
    pullback A f = forget A Y ⋙ Presheaf.pullback A f ⋙ presheafToSheaf _ _ 
Arguments: {X Y : TopCat} (A : Type u_1) [CategoryTheory.Category.{w, u_1} A] [CategoryTheory.ConcreteCategory A] [CategoryTheory.Limits.HasColimits A] [CategoryTheory.Limits.HasLimits A] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget A)] [CategoryTheory.Limits.PreservesFilteredColimits (CategoryTheory.forget A)] [(CategoryTheory.forget A).ReflectsIsomorphisms] (f : X ⟶ Y)
Goal: TopCat.Sheaf.pullback A f =
  TopCat.Sheaf.forget A Y ⋙
    TopCat.Presheaf.pullback A f ⋙ CategoryTheory.presheafToSheaf (Opens.grothendieckTopology ↑X) A
-- UniformSpace.ofDist_aux
theorem UniformSpace.ofDist_aux (ε : ℝ) (hε : 0 < ε) : ∃ δ > (0 : ℝ), ∀ x < δ, ∀ y < δ, x + y < ε 
Arguments: (ε : ℝ) (hε : 0 < ε)
Goal: ∃ δ > 0, ∀ x < δ, ∀ y < δ, x + y < ε
-- _private.Mathlib.Topology.MetricSpace.Pseudo.Defs.0.dist_nonneg'
private theorem dist_nonneg' {α} {x y : α} (dist : α → α → ℝ)
    (dist_self : ∀ x : α, dist x x = 0) (dist_comm : ∀ x y : α, dist x y = dist y x)
    (dist_triangle : ∀ x y z : α, dist x z ≤ dist x y + dist y z) : 0 ≤ dist x y 
Arguments: {α : Sort u_3} {x y : α} (dist : α → α → ℝ) (dist_self : ∀ (x : α), dist x x = 0) (dist_comm : ∀ (x y : α), dist x y = dist y x) (dist_triangle : ∀ (x y z : α), dist x z ≤ dist x y + dist y z)
Goal: 0 ≤ dist x y
-- PseudoMetricSpace.dist_self
class PseudoMetricSpace (α : Type u) extends Dist α : Type u where
  dist_self : ∀ x : α, dist x x = 0
  dist_comm : ∀ x y : α, dist x y = dist y x
  dist_triangle : ∀ x y z : α, dist x z ≤ dist x y + dist y z
  edist : α → α → ℝ≥0∞ := fun x y => ENNReal.ofNNReal ⟨dist x y, dist_nonneg' _ ‹_› ‹_› ‹_›⟩
  edist_dist : ∀ x y : α, edist x y = ENNReal.ofReal (dist x y) := by
    intros x y; exact ENNReal.coe_nnreal_eq _
  toUniformSpace : UniformSpace α := .ofDist dist dist_self dist_comm dist_triangle
  uniformity_dist : 𝓤 α = ⨅ ε > 0, 𝓟 { p : α × α | dist p.1 p.2 < ε } := by intros; rfl
  toBornology : Bornology α := Bornology.ofDist dist dist_comm dist_triangle
  cobounded_sets : (Bornology.cobounded α).sets =
    { s | ∃ C : ℝ, ∀ x ∈ sᶜ, ∀ y ∈ sᶜ, dist x y ≤ C } := by intros; rfl
Arguments: {α : Type u} [self : PseudoMetricSpace α] (x : α)
Goal: dist x x = 0
-- PseudoMetricSpace.dist_triangle
class PseudoMetricSpace (α : Type u) extends Dist α : Type u where
  dist_self : ∀ x : α, dist x x = 0
  dist_comm : ∀ x y : α, dist x y = dist y x
  dist_triangle : ∀ x y z : α, dist x z ≤ dist x y + dist y z
  edist : α → α → ℝ≥0∞ := fun x y => ENNReal.ofNNReal ⟨dist x y, dist_nonneg' _ ‹_› ‹_› ‹_›⟩
  edist_dist : ∀ x y : α, edist x y = ENNReal.ofReal (dist x y) := by
    intros x y; exact ENNReal.coe_nnreal_eq _
  toUniformSpace : UniformSpace α := .ofDist dist dist_self dist_comm dist_triangle
  uniformity_dist : 𝓤 α = ⨅ ε > 0, 𝓟 { p : α × α | dist p.1 p.2 < ε } := by intros; rfl
  toBornology : Bornology α := Bornology.ofDist dist dist_comm dist_triangle
  cobounded_sets : (Bornology.cobounded α).sets =
    { s | ∃ C : ℝ, ∀ x ∈ sᶜ, ∀ y ∈ sᶜ, dist x y ≤ C } := by intros; rfl
Arguments: {α : Type u} [self : PseudoMetricSpace α] (x y z : α)
Goal: dist x z ≤ dist x y + dist y z
-- PseudoMetricSpace.uniformity_dist
class PseudoMetricSpace (α : Type u) extends Dist α : Type u where
  dist_self : ∀ x : α, dist x x = 0
  dist_comm : ∀ x y : α, dist x y = dist y x
  dist_triangle : ∀ x y z : α, dist x z ≤ dist x y + dist y z
  edist : α → α → ℝ≥0∞ := fun x y => ENNReal.ofNNReal ⟨dist x y, dist_nonneg' _ ‹_› ‹_› ‹_›⟩
  edist_dist : ∀ x y : α, edist x y = ENNReal.ofReal (dist x y) := by
    intros x y; exact ENNReal.coe_nnreal_eq _
  toUniformSpace : UniformSpace α := .ofDist dist dist_self dist_comm dist_triangle
  uniformity_dist : 𝓤 α = ⨅ ε > 0, 𝓟 { p : α × α | dist p.1 p.2 < ε } := by intros; rfl
  toBornology : Bornology α := Bornology.ofDist dist dist_comm dist_triangle
  cobounded_sets : (Bornology.cobounded α).sets =
    { s | ∃ C : ℝ, ∀ x ∈ sᶜ, ∀ y ∈ sᶜ, dist x y ≤ C } := by intros; rfl
Arguments: {α : Type u} [self : PseudoMetricSpace α]
Goal: 𝓤 α = ⨅ ε, ⨅ (_ : ε > 0), 𝓟 {p | dist p.1 p.2 < ε}
-- PseudoMetricSpace.edist_dist
class PseudoMetricSpace (α : Type u) extends Dist α : Type u where
  dist_self : ∀ x : α, dist x x = 0
  dist_comm : ∀ x y : α, dist x y = dist y x
  dist_triangle : ∀ x y z : α, dist x z ≤ dist x y + dist y z
  edist : α → α → ℝ≥0∞ := fun x y => ENNReal.ofNNReal ⟨dist x y, dist_nonneg' _ ‹_› ‹_› ‹_›⟩
  edist_dist : ∀ x y : α, edist x y = ENNReal.ofReal (dist x y) := by
    intros x y; exact ENNReal.coe_nnreal_eq _
  toUniformSpace : UniformSpace α := .ofDist dist dist_self dist_comm dist_triangle
  uniformity_dist : 𝓤 α = ⨅ ε > 0, 𝓟 { p : α × α | dist p.1 p.2 < ε } := by intros; rfl
  toBornology : Bornology α := Bornology.ofDist dist dist_comm dist_triangle
  cobounded_sets : (Bornology.cobounded α).sets =
    { s | ∃ C : ℝ, ∀ x ∈ sᶜ, ∀ y ∈ sᶜ, dist x y ≤ C } := by intros; rfl
Arguments: {α : Type u} [self : PseudoMetricSpace α] (x y : α)
Goal: PseudoMetricSpace.edist x y = ENNReal.ofReal (dist x y)
-- PseudoMetricSpace.dist_comm
class PseudoMetricSpace (α : Type u) extends Dist α : Type u where
  dist_self : ∀ x : α, dist x x = 0
  dist_comm : ∀ x y : α, dist x y = dist y x
  dist_triangle : ∀ x y z : α, dist x z ≤ dist x y + dist y z
  edist : α → α → ℝ≥0∞ := fun x y => ENNReal.ofNNReal ⟨dist x y, dist_nonneg' _ ‹_› ‹_› ‹_›⟩
  edist_dist : ∀ x y : α, edist x y = ENNReal.ofReal (dist x y) := by
    intros x y; exact ENNReal.coe_nnreal_eq _
  toUniformSpace : UniformSpace α := .ofDist dist dist_self dist_comm dist_triangle
  uniformity_dist : 𝓤 α = ⨅ ε > 0, 𝓟 { p : α × α | dist p.1 p.2 < ε } := by intros; rfl
  toBornology : Bornology α := Bornology.ofDist dist dist_comm dist_triangle
  cobounded_sets : (Bornology.cobounded α).sets =
    { s | ∃ C : ℝ, ∀ x ∈ sᶜ, ∀ y ∈ sᶜ, dist x y ≤ C } := by intros; rfl
Arguments: {α : Type u} [self : PseudoMetricSpace α] (x y : α)
Goal: dist x y = dist y x
-- PseudoMetricSpace.cobounded_sets
class PseudoMetricSpace (α : Type u) extends Dist α : Type u where
  dist_self : ∀ x : α, dist x x = 0
  dist_comm : ∀ x y : α, dist x y = dist y x
  dist_triangle : ∀ x y z : α, dist x z ≤ dist x y + dist y z
  edist : α → α → ℝ≥0∞ := fun x y => ENNReal.ofNNReal ⟨dist x y, dist_nonneg' _ ‹_› ‹_› ‹_›⟩
  edist_dist : ∀ x y : α, edist x y = ENNReal.ofReal (dist x y) := by
    intros x y; exact ENNReal.coe_nnreal_eq _
  toUniformSpace : UniformSpace α := .ofDist dist dist_self dist_comm dist_triangle
  uniformity_dist : 𝓤 α = ⨅ ε > 0, 𝓟 { p : α × α | dist p.1 p.2 < ε } := by intros; rfl
  toBornology : Bornology α := Bornology.ofDist dist dist_comm dist_triangle
  cobounded_sets : (Bornology.cobounded α).sets =
    { s | ∃ C : ℝ, ∀ x ∈ sᶜ, ∀ y ∈ sᶜ, dist x y ≤ C } := by intros; rfl
Arguments: {α : Type u} [self : PseudoMetricSpace α]
Goal: (Bornology.cobounded α).sets = {s | ∃ C, ∀ x ∈ sᶜ, ∀ y ∈ sᶜ, dist x y ≤ C}
-- PseudoMetricSpace.ext
@[ext]
theorem PseudoMetricSpace.ext {α : Type*} {m m' : PseudoMetricSpace α}
    (h : m.toDist = m'.toDist) : m = m' 
Arguments: {α : Type u_3} {m m' : PseudoMetricSpace α} (h : PseudoMetricSpace.toDist = PseudoMetricSpace.toDist)
Goal: m = m'
-- dist_self
@[simp]
theorem dist_self (x : α) : dist x x = 0 
Arguments: {α : Type u} [PseudoMetricSpace α] (x : α)
Goal: dist x x = 0
-- dist_comm
theorem dist_comm (x y : α) : dist x y = dist y x 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y : α)
Goal: dist x y = dist y x
-- edist_dist
theorem edist_dist (x y : α) : edist x y = ENNReal.ofReal (dist x y) 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y : α)
Goal: edist x y = ENNReal.ofReal (dist x y)
-- dist_triangle
theorem dist_triangle (x y z : α) : dist x z ≤ dist x y + dist y z 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y z : α)
Goal: dist x z ≤ dist x y + dist y z
-- dist_triangle_left
theorem dist_triangle_left (x y z : α) : dist x y ≤ dist z x + dist z y 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y z : α)
Goal: dist x y ≤ dist z x + dist z y
-- dist_triangle_right
theorem dist_triangle_right (x y z : α) : dist x y ≤ dist x z + dist y z 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y z : α)
Goal: dist x y ≤ dist x z + dist y z
-- dist_triangle4
theorem dist_triangle4 (x y z w : α) : dist x w ≤ dist x y + dist y z + dist z w 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y z w : α)
Goal: dist x w ≤ dist x y + dist y z + dist z w
-- dist_triangle4_left
theorem dist_triangle4_left (x₁ y₁ x₂ y₂ : α) :
    dist x₂ y₂ ≤ dist x₁ y₁ + (dist x₁ x₂ + dist y₁ y₂) 
Arguments: {α : Type u} [PseudoMetricSpace α] (x₁ y₁ x₂ y₂ : α)
Goal: dist x₂ y₂ ≤ dist x₁ y₁ + (dist x₁ x₂ + dist y₁ y₂)
-- dist_triangle4_right
theorem dist_triangle4_right (x₁ y₁ x₂ y₂ : α) :
    dist x₁ y₁ ≤ dist x₁ x₂ + dist y₁ y₂ + dist x₂ y₂ 
Arguments: {α : Type u} [PseudoMetricSpace α] (x₁ y₁ x₂ y₂ : α)
Goal: dist x₁ y₁ ≤ dist x₁ x₂ + dist y₁ y₂ + dist x₂ y₂
-- dist_le_Ico_sum_dist
theorem dist_le_Ico_sum_dist (f : ℕ → α) {m n} (h : m ≤ n) :
    dist (f m) (f n) ≤ ∑ i ∈ Finset.Ico m n, dist (f i) (f (i + 1)) 
Arguments: {α : Type u} [PseudoMetricSpace α] (f : ℕ → α) {m n : ℕ} (h : m ≤ n)
Goal: dist (f m) (f n) ≤ ∑ i ∈ Finset.Ico m n, dist (f i) (f (i + 1))
-- dist_le_range_sum_dist
theorem dist_le_range_sum_dist (f : ℕ → α) (n : ℕ) :
    dist (f 0) (f n) ≤ ∑ i ∈ Finset.range n, dist (f i) (f (i + 1)) 
Arguments: {α : Type u} [PseudoMetricSpace α] (f : ℕ → α) (n : ℕ)
Goal: dist (f 0) (f n) ≤ ∑ i ∈ Finset.range n, dist (f i) (f (i + 1))
-- dist_le_Ico_sum_of_dist_le
theorem dist_le_Ico_sum_of_dist_le {f : ℕ → α} {m n} (hmn : m ≤ n) {d : ℕ → ℝ}
    (hd : ∀ {k}, m ≤ k → k < n → dist (f k) (f (k + 1)) ≤ d k) :
    dist (f m) (f n) ≤ ∑ i ∈ Finset.Ico m n, d i 
Arguments: {α : Type u} [PseudoMetricSpace α] {f : ℕ → α} {m n : ℕ} (hmn : m ≤ n) {d : ℕ → ℝ} (hd : ∀ {k : ℕ}, m ≤ k → k < n → dist (f k) (f (k + 1)) ≤ d k)
Goal: dist (f m) (f n) ≤ ∑ i ∈ Finset.Ico m n, d i
-- dist_le_range_sum_of_dist_le
theorem dist_le_range_sum_of_dist_le {f : ℕ → α} (n : ℕ) {d : ℕ → ℝ}
    (hd : ∀ {k}, k < n → dist (f k) (f (k + 1)) ≤ d k) :
    dist (f 0) (f n) ≤ ∑ i ∈ Finset.range n, d i 
Arguments: {α : Type u} [PseudoMetricSpace α] {f : ℕ → α} (n : ℕ) {d : ℕ → ℝ} (hd : ∀ {k : ℕ}, k < n → dist (f k) (f (k + 1)) ≤ d k)
Goal: dist (f 0) (f n) ≤ ∑ i ∈ Finset.range n, d i
-- swap_dist
theorem swap_dist : Function.swap (@dist α _) = dist 
Arguments: {α : Type u} [PseudoMetricSpace α]
Goal: Function.swap dist = dist
-- abs_dist_sub_le
theorem abs_dist_sub_le (x y z : α) : |dist x z - dist y z| ≤ dist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y z : α)
Goal: |dist x z - dist y z| ≤ dist x y
-- dist_nonneg
theorem dist_nonneg {x y : α} : 0 ≤ dist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] {x y : α}
Goal: 0 ≤ dist x y
-- abs_dist
@[simp] theorem abs_dist {a b : α} : |dist a b| = dist a b 
Arguments: {α : Type u} [PseudoMetricSpace α] {a b : α}
Goal: |dist a b| = dist a b
-- dist_nndist
theorem dist_nndist (x y : α) : dist x y = nndist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y : α)
Goal: dist x y = ↑(nndist x y)
-- coe_nndist
@[simp, norm_cast]
theorem coe_nndist (x y : α) : ↑(nndist x y) = dist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y : α)
Goal: ↑(nndist x y) = dist x y
-- edist_nndist
theorem edist_nndist (x y : α) : edist x y = nndist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y : α)
Goal: edist x y = ↑(nndist x y)
-- nndist_edist
theorem nndist_edist (x y : α) : nndist x y = (edist x y).toNNReal 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y : α)
Goal: nndist x y = (edist x y).toNNReal
-- coe_nnreal_ennreal_nndist
@[simp, norm_cast]
theorem coe_nnreal_ennreal_nndist (x y : α) : ↑(nndist x y) = edist x y 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y : α)
Goal: ↑(nndist x y) = edist x y
-- edist_lt_coe
@[simp, norm_cast]
theorem edist_lt_coe {x y : α} {c : ℝ≥0} : edist x y < c ↔ nndist x y < c 
Arguments: {α : Type u} [PseudoMetricSpace α] {x y : α} {c : ℝ≥0}
Goal: edist x y < ↑c ↔ nndist x y < c
-- edist_le_coe
@[simp, norm_cast]
theorem edist_le_coe {x y : α} {c : ℝ≥0} : edist x y ≤ c ↔ nndist x y ≤ c 
Arguments: {α : Type u} [PseudoMetricSpace α] {x y : α} {c : ℝ≥0}
Goal: edist x y ≤ ↑c ↔ nndist x y ≤ c
-- edist_lt_top
theorem edist_lt_top {α : Type*} [PseudoMetricSpace α] (x y : α) : edist x y < ⊤ 
Arguments: {α : Type u_3} [PseudoMetricSpace α] (x y : α)
Goal: edist x y < ⊤
-- edist_ne_top
theorem edist_ne_top (x y : α) : edist x y ≠ ⊤ 
Arguments: {α : Type u} [PseudoMetricSpace α] (x y : α)
Goal: edist x y ≠ ⊤
-- nndist_self
@[simp] theorem nndist_self (a : α) : nndist a a = 0 
Arguments: {α : Type u} [PseudoMetricSpace α] (a : α)
Goal: nndist a a = 0
-- dist_lt_coe
@[simp, norm_cast]
theorem dist_lt_coe {x y : α} {c : ℝ≥0} : dist x y < c ↔ nndist x y < c 
Arguments: {α : Type u} [PseudoMetricSpace α] {x y : α} {c : ℝ≥0}
Goal: dist x y < ↑c ↔ nndist x y < c