ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Path.extend_one
theorem extend_one : γ.extend 1 = y 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} (γ : Path x y)
Goal: γ.extend 1 = y
-- Path.extend_extends'
@[simp]
theorem extend_extends' {a b : X} (γ : Path a b) (t : (Icc 0 1 : Set ℝ)) : γ.extend t = γ t 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b : X} (γ : Path a b) (t : ↑(Set.Icc 0 1))
Goal: γ.extend ↑t = γ t
-- Path.extend_range
@[simp]
theorem extend_range {a b : X} (γ : Path a b) :
    range γ.extend = range γ 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b : X} (γ : Path a b)
Goal: Set.range γ.extend = Set.range ⇑γ
-- Path.extend_of_le_zero
theorem extend_of_le_zero {a b : X} (γ : Path a b) {t : ℝ}
    (ht : t ≤ 0) : γ.extend t = a 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b : X} (γ : Path a b) {t : ℝ} (ht : t ≤ 0)
Goal: γ.extend t = a
-- Path.extend_of_one_le
theorem extend_of_one_le {a b : X} (γ : Path a b) {t : ℝ}
    (ht : 1 ≤ t) : γ.extend t = b 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b : X} (γ : Path a b) {t : ℝ} (ht : 1 ≤ t)
Goal: γ.extend t = b
-- Path.refl_extend
@[simp]
theorem refl_extend {a : X} : (Path.refl a).extend = fun _ => a 
Arguments: {X : Type u_1} [TopologicalSpace X] {a : X}
Goal: (Path.refl a).extend = fun x => a
-- Path.ofLine_mem
theorem ofLine_mem {f : ℝ → X} (hf : ContinuousOn f I) (h₀ : f 0 = x) (h₁ : f 1 = y) :
    ∀ t, ofLine hf h₀ h₁ t ∈ f '' I 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {f : ℝ → X} (hf : ContinuousOn f I) (h₀ : f 0 = x) (h₁ : f 1 = y) (t : ↑I)
Goal: (Path.ofLine hf h₀ h₁) t ∈ f '' I
-- Path.trans_apply
theorem trans_apply (γ : Path x y) (γ' : Path y z) (t : I) :
    (γ.trans γ') t =
      if h : (t : ℝ) ≤ 1 / 2 then γ ⟨2 * t, (mul_pos_mem_iff zero_lt_two).2 ⟨t.2.1, h⟩⟩
      else γ' ⟨2 * t - 1, two_mul_sub_one_mem_iff.2 ⟨(not_le.1 h).le, t.2.2⟩⟩ 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y z : X} (γ : Path x y) (γ' : Path y z) (t : ↑I)
Goal: (γ.trans γ') t = if h : ↑t ≤ 1 / 2 then γ ⟨2 * ↑t, ⋯⟩ else γ' ⟨2 * ↑t - 1, ⋯⟩
-- Path.trans_symm
@[simp]
theorem trans_symm (γ : Path x y) (γ' : Path y z) : (γ.trans γ').symm = γ'.symm.trans γ.symm 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y z : X} (γ : Path x y) (γ' : Path y z)
Goal: (γ.trans γ').symm = γ'.symm.trans γ.symm
-- Path.refl_trans_refl
@[simp]
theorem refl_trans_refl {a : X} :
    (Path.refl a).trans (Path.refl a) = Path.refl a 
Arguments: {X : Type u_1} [TopologicalSpace X] {a : X}
Goal: (Path.refl a).trans (Path.refl a) = Path.refl a
-- Path.trans_range
theorem trans_range {a b c : X} (γ₁ : Path a b) (γ₂ : Path b c) :
    range (γ₁.trans γ₂) = range γ₁ ∪ range γ₂ 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b c : X} (γ₁ : Path a b) (γ₂ : Path b c)
Goal: Set.range ⇑(γ₁.trans γ₂) = Set.range ⇑γ₁ ∪ Set.range ⇑γ₂
-- Path.map_coe
@[simp]
theorem map_coe (γ : Path x y) {f : X → Y} (h : Continuous f) :
    (γ.map h : I → Y) = f ∘ γ 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {x y : X} (γ : Path x y) {f : X → Y} (h : Continuous f)
Goal: ⇑(γ.map h) = f ∘ ⇑γ
-- Path.map_symm
@[simp]
theorem map_symm (γ : Path x y) {f : X → Y} (h : Continuous f) :
    (γ.map h).symm = γ.symm.map h 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {x y : X} (γ : Path x y) {f : X → Y} (h : Continuous f)
Goal: (γ.map h).symm = γ.symm.map h
-- Path.map_trans
@[simp]
theorem map_trans (γ : Path x y) (γ' : Path y z) {f : X → Y}
    (h : Continuous f) : (γ.trans γ').map h = (γ.map h).trans (γ'.map h) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {x y z : X} (γ : Path x y) (γ' : Path y z) {f : X → Y} (h : Continuous f)
Goal: (γ.trans γ').map h = (γ.map h).trans (γ'.map h)
-- Path.map_id
@[simp]
theorem map_id (γ : Path x y) : γ.map continuous_id = γ 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} (γ : Path x y)
Goal: γ.map ⋯ = γ
-- Path.map_map
@[simp]
theorem map_map (γ : Path x y) {Z : Type*} [TopologicalSpace Z]
    {f : X → Y} (hf : Continuous f) {g : Y → Z} (hg : Continuous g) :
    (γ.map hf).map hg = γ.map (hg.comp hf) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {x y : X} (γ : Path x y) {Z : Type u_4} [TopologicalSpace Z] {f : X → Y} (hf : Continuous f) {g : Y → Z} (hg : Continuous g)
Goal: (γ.map hf).map hg = γ.map ⋯
-- Path.symm_cast
@[simp]
theorem symm_cast {a₁ a₂ b₁ b₂ : X} (γ : Path a₂ b₂) (ha : a₁ = a₂) (hb : b₁ = b₂) :
    (γ.cast ha hb).symm = γ.symm.cast hb ha 
Arguments: {X : Type u_1} [TopologicalSpace X] {a₁ a₂ b₁ b₂ : X} (γ : Path a₂ b₂) (ha : a₁ = a₂) (hb : b₁ = b₂)
Goal: (γ.cast ha hb).symm = γ.symm.cast hb ha
-- Path.trans_cast
@[simp]
theorem trans_cast {a₁ a₂ b₁ b₂ c₁ c₂ : X} (γ : Path a₂ b₂)
    (γ' : Path b₂ c₂) (ha : a₁ = a₂) (hb : b₁ = b₂) (hc : c₁ = c₂) :
    (γ.cast ha hb).trans (γ'.cast hb hc) = (γ.trans γ').cast ha hc 
Arguments: {X : Type u_1} [TopologicalSpace X] {a₁ a₂ b₁ b₂ c₁ c₂ : X} (γ : Path a₂ b₂) (γ' : Path b₂ c₂) (ha : a₁ = a₂) (hb : b₁ = b₂) (hc : c₁ = c₂)
Goal: (γ.cast ha hb).trans (γ'.cast hb hc) = (γ.trans γ').cast ha hc
-- Path.cast_coe
@[simp]
theorem cast_coe (γ : Path x y) {x' y'} (hx : x' = x) (hy : y' = y) : (γ.cast hx hy : I → X) = γ 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} (γ : Path x y) {x' y' : X} (hx : x' = x) (hy : y' = y)
Goal: ⇑(γ.cast hx hy) = ⇑γ
-- Path.symm_continuous_family
@[continuity, fun_prop]
theorem symm_continuous_family {ι : Type*} [TopologicalSpace ι]
    {a b : ι → X} (γ : ∀ t : ι, Path (a t) (b t)) (h : Continuous ↿γ) :
    Continuous ↿fun t => (γ t).symm 
Arguments: {X : Type u_1} [TopologicalSpace X] {ι : Type u_4} [TopologicalSpace ι] {a b : ι → X} (γ : (t : ι) → Path (a t) (b t)) (h : Continuous ↿γ)
Goal: Continuous ↿fun t => (γ t).symm
-- Path.continuous_symm
@[continuity]
theorem continuous_symm : Continuous (symm : Path x y → Path y x) 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X}
Goal: Continuous Path.symm
-- Path.continuous_uncurry_extend_of_continuous_family
@[continuity]
theorem continuous_uncurry_extend_of_continuous_family {ι : Type*} [TopologicalSpace ι]
    {a b : ι → X} (γ : ∀ t : ι, Path (a t) (b t)) (h : Continuous ↿γ) :
    Continuous ↿fun t => (γ t).extend 
Arguments: {X : Type u_1} [TopologicalSpace X] {ι : Type u_4} [TopologicalSpace ι] {a b : ι → X} (γ : (t : ι) → Path (a t) (b t)) (h : Continuous ↿γ)
Goal: Continuous ↿fun t => (γ t).extend
-- Path.trans_continuous_family
@[continuity]
theorem trans_continuous_family {ι : Type*} [TopologicalSpace ι]
    {a b c : ι → X} (γ₁ : ∀ t : ι, Path (a t) (b t)) (h₁ : Continuous ↿γ₁)
    (γ₂ : ∀ t : ι, Path (b t) (c t)) (h₂ : Continuous ↿γ₂) :
    Continuous ↿fun t => (γ₁ t).trans (γ₂ t) 
Arguments: {X : Type u_1} [TopologicalSpace X] {ι : Type u_4} [TopologicalSpace ι] {a b c : ι → X} (γ₁ : (t : ι) → Path (a t) (b t)) (h₁ : Continuous ↿γ₁) (γ₂ : (t : ι) → Path (b t) (c t)) (h₂ : Continuous ↿γ₂)
Goal: Continuous ↿fun t => (γ₁ t).trans (γ₂ t)
-- Continuous.path_trans
@[continuity]
theorem _root_.Continuous.path_trans {f : Y → Path x y} {g : Y → Path y z} :
    Continuous f → Continuous g → Continuous fun t => (f t).trans (g t) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {x y z : X} {f : Y → Path x y} {g : Y → Path y z}
Goal: Continuous f → Continuous g → Continuous fun t => (f t).trans (g t)
-- Path.continuous_trans
@[continuity]
theorem continuous_trans {x y z : X} : Continuous fun ρ : Path x y × Path y z => ρ.1.trans ρ.2 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y z : X}
Goal: Continuous fun ρ => ρ.1.trans ρ.2
-- Path.prod_coe
@[simp]
theorem prod_coe (γ₁ : Path a₁ a₂) (γ₂ : Path b₁ b₂) :
    ⇑(γ₁.prod γ₂) = fun t => (γ₁ t, γ₂ t) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {a₁ a₂ : X} {b₁ b₂ : Y} (γ₁ : Path a₁ a₂) (γ₂ : Path b₁ b₂)
Goal: ⇑(γ₁.prod γ₂) = fun t => (γ₁ t, γ₂ t)
-- Path.trans_prod_eq_prod_trans
theorem trans_prod_eq_prod_trans (γ₁ : Path a₁ a₂) (δ₁ : Path a₂ a₃) (γ₂ : Path b₁ b₂)
    (δ₂ : Path b₂ b₃) : (γ₁.prod γ₂).trans (δ₁.prod δ₂) = (γ₁.trans δ₁).prod (γ₂.trans δ₂) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {a₁ a₂ a₃ : X} {b₁ b₂ b₃ : Y} (γ₁ : Path a₁ a₂) (δ₁ : Path a₂ a₃) (γ₂ : Path b₁ b₂) (δ₂ : Path b₂ b₃)
Goal: (γ₁.prod γ₂).trans (δ₁.prod δ₂) = (γ₁.trans δ₁).prod (γ₂.trans δ₂)
-- Path.pi_coe
@[simp]
theorem pi_coe (γ : ∀ i, Path (as i) (bs i)) : ⇑(Path.pi γ) = fun t i => γ i t 
Arguments: {ι : Type u_3} {χ : ι → Type u_4} [(i : ι) → TopologicalSpace (χ i)] {as bs : (i : ι) → χ i} (γ : (i : ι) → Path (as i) (bs i))
Goal: ⇑(Path.pi γ) = fun t i => (γ i) t
-- Path.trans_pi_eq_pi_trans
theorem trans_pi_eq_pi_trans (γ₀ : ∀ i, Path (as i) (bs i)) (γ₁ : ∀ i, Path (bs i) (cs i)) :
    (Path.pi γ₀).trans (Path.pi γ₁) = Path.pi fun i => (γ₀ i).trans (γ₁ i) 
Arguments: {ι : Type u_3} {χ : ι → Type u_4} [(i : ι) → TopologicalSpace (χ i)] {as bs cs : (i : ι) → χ i} (γ₀ : (i : ι) → Path (as i) (bs i)) (γ₁ : (i : ι) → Path (bs i) (cs i))
Goal: (Path.pi γ₀).trans (Path.pi γ₁) = Path.pi fun i => (γ₀ i).trans (γ₁ i)
-- Path.add_apply
@[to_additive]
protected theorem mul_apply [Mul X] [ContinuousMul X] {a₁ b₁ a₂ b₂ : X} (γ₁ : Path a₁ b₁)
    (γ₂ : Path a₂ b₂) (t : unitInterval) : (γ₁.mul γ₂) t = γ₁ t * γ₂ t 
Arguments: {X : Type u_1} [TopologicalSpace X] [Add X] [ContinuousAdd X] {a₁ b₁ a₂ b₂ : X} (γ₁ : Path a₁ b₁) (γ₂ : Path a₂ b₂) (t : ↑I)
Goal: (γ₁.add γ₂) t = γ₁ t + γ₂ t
-- Path.mul_apply
@[to_additive]
protected theorem mul_apply [Mul X] [ContinuousMul X] {a₁ b₁ a₂ b₂ : X} (γ₁ : Path a₁ b₁)
    (γ₂ : Path a₂ b₂) (t : unitInterval) : (γ₁.mul γ₂) t = γ₁ t * γ₂ t 
Arguments: {X : Type u_1} [TopologicalSpace X] [Mul X] [ContinuousMul X] {a₁ b₁ a₂ b₂ : X} (γ₁ : Path a₁ b₁) (γ₂ : Path a₂ b₂) (t : ↑I)
Goal: (γ₁.mul γ₂) t = γ₁ t * γ₂ t
-- Path.truncate_range
theorem truncate_range {a b : X} (γ : Path a b) {t₀ t₁ : ℝ} :
    range (γ.truncate t₀ t₁) ⊆ range γ 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b : X} (γ : Path a b) {t₀ t₁ : ℝ}
Goal: Set.range ⇑(γ.truncate t₀ t₁) ⊆ Set.range ⇑γ
-- Path.truncate_continuous_family
@[continuity]
theorem truncate_continuous_family {a b : X} (γ : Path a b) :
    Continuous (fun x => γ.truncate x.1 x.2.1 x.2.2 : ℝ × ℝ × I → X) 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b : X} (γ : Path a b)
Goal: Continuous fun x => (γ.truncate x.1 x.2.1) x.2.2
-- Path.truncate_const_continuous_family
@[continuity]
theorem truncate_const_continuous_family {a b : X} (γ : Path a b)
    (t : ℝ) : Continuous ↿(γ.truncate t) 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b : X} (γ : Path a b) (t : ℝ)
Goal: Continuous ↿(γ.truncate t)
-- Path.truncate_self
@[simp]
theorem truncate_self {a b : X} (γ : Path a b) (t : ℝ) :
    γ.truncate t t = (Path.refl <| γ.extend t).cast (by rw [min_self]) rfl 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b : X} (γ : Path a b) (t : ℝ)
Goal: γ.truncate t t = (Path.refl (γ.extend t)).cast ⋯ ⋯
-- Path.truncate_zero_zero
@[simp 1001] -- Porting note: increase `simp` priority so left-hand side doesn't simplify
theorem truncate_zero_zero {a b : X} (γ : Path a b) :
    γ.truncate 0 0 = (Path.refl a).cast (by rw [min_self, γ.extend_zero]) γ.extend_zero 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b : X} (γ : Path a b)
Goal: γ.truncate 0 0 = (Path.refl a).cast ⋯ ⋯
-- Path.truncate_one_one
@[simp 1001] -- Porting note: increase `simp` priority so left-hand side doesn't simplify
theorem truncate_one_one {a b : X} (γ : Path a b) :
    γ.truncate 1 1 = (Path.refl b).cast (by rw [min_self, γ.extend_one]) γ.extend_one 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b : X} (γ : Path a b)
Goal: γ.truncate 1 1 = (Path.refl b).cast ⋯ ⋯
-- Path.truncate_zero_one
@[simp]
theorem truncate_zero_one {a b : X} (γ : Path a b) :
    γ.truncate 0 1 = γ.cast (by simp [zero_le_one, extend_zero]) (by simp) 
Arguments: {X : Type u_1} [TopologicalSpace X] {a b : X} (γ : Path a b)
Goal: γ.truncate 0 1 = γ.cast ⋯ ⋯
-- Path.coe_reparam
@[simp]
theorem coe_reparam (γ : Path x y) {f : I → I} (hfcont : Continuous f) (hf₀ : f 0 = 0)
    (hf₁ : f 1 = 1) : ⇑(γ.reparam f hfcont hf₀ hf₁) = γ ∘ f 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} (γ : Path x y) {f : ↑I → ↑I} (hfcont : Continuous f) (hf₀ : f 0 = 0) (hf₁ : f 1 = 1)
Goal: ⇑(γ.reparam f hfcont hf₀ hf₁) = ⇑γ ∘ f
-- Path.reparam_id
@[simp]
theorem reparam_id (γ : Path x y) : γ.reparam id continuous_id rfl rfl = γ 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} (γ : Path x y)
Goal: γ.reparam id ⋯ ⋯ ⋯ = γ
-- Path.range_reparam
theorem range_reparam (γ : Path x y) {f : I → I} (hfcont : Continuous f) (hf₀ : f 0 = 0)
    (hf₁ : f 1 = 1) : range (γ.reparam f hfcont hf₀ hf₁) = range γ 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} (γ : Path x y) {f : ↑I → ↑I} (hfcont : Continuous f) (hf₀ : f 0 = 0) (hf₁ : f 1 = 1)
Goal: Set.range ⇑(γ.reparam f hfcont hf₀ hf₁) = Set.range ⇑γ
-- Path.refl_reparam
theorem refl_reparam {f : I → I} (hfcont : Continuous f) (hf₀ : f 0 = 0) (hf₁ : f 1 = 1) :
    (refl x).reparam f hfcont hf₀ hf₁ = refl x 
Arguments: {X : Type u_1} [TopologicalSpace X] {x : X} {f : ↑I → ↑I} (hfcont : Continuous f) (hf₀ : f 0 = 0) (hf₁ : f 1 = 1)
Goal: (Path.refl x).reparam f hfcont hf₀ hf₁ = Path.refl x
-- Joined.refl
@[refl]
theorem Joined.refl (x : X) : Joined x x 
Arguments: {X : Type u_1} [TopologicalSpace X] (x : X)
Goal: Joined x x
-- Joined.symm
@[symm]
theorem Joined.symm {x y : X} (h : Joined x y) : Joined y x 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} (h : Joined x y)
Goal: Joined y x
-- Joined.trans
@[trans]
theorem Joined.trans {x y z : X} (hxy : Joined x y) (hyz : Joined y z) : Joined x z 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y z : X} (hxy : Joined x y) (hyz : Joined y z)
Goal: Joined x z
-- JoinedIn.mem
theorem JoinedIn.mem (h : JoinedIn F x y) : x ∈ F ∧ y ∈ F 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} (h : JoinedIn F x y)
Goal: x ∈ F ∧ y ∈ F
-- JoinedIn.source_mem
theorem JoinedIn.source_mem (h : JoinedIn F x y) : x ∈ F 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} (h : JoinedIn F x y)
Goal: x ∈ F
-- JoinedIn.target_mem
theorem JoinedIn.target_mem (h : JoinedIn F x y) : y ∈ F 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} (h : JoinedIn F x y)
Goal: y ∈ F
-- JoinedIn.somePath_mem
theorem JoinedIn.somePath_mem (h : JoinedIn F x y) (t : I) : h.somePath t ∈ F 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} (h : JoinedIn F x y) (t : ↑I)
Goal: h.somePath t ∈ F
-- JoinedIn.joined_subtype
theorem JoinedIn.joined_subtype (h : JoinedIn F x y) :
    Joined (⟨x, h.source_mem⟩ : F) (⟨y, h.target_mem⟩ : F) 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} (h : JoinedIn F x y)
Goal: Joined ⟨x, ⋯⟩ ⟨y, ⋯⟩
-- JoinedIn.ofLine
theorem JoinedIn.ofLine {f : ℝ → X} (hf : ContinuousOn f I) (h₀ : f 0 = x) (h₁ : f 1 = y)
    (hF : f '' I ⊆ F) : JoinedIn F x y 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} {f : ℝ → X} (hf : ContinuousOn f I) (h₀ : f 0 = x) (h₁ : f 1 = y) (hF : f '' I ⊆ F)
Goal: JoinedIn F x y
-- JoinedIn.joined
theorem JoinedIn.joined (h : JoinedIn F x y) : Joined x y 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} (h : JoinedIn F x y)
Goal: Joined x y
-- joinedIn_iff_joined
theorem joinedIn_iff_joined (x_in : x ∈ F) (y_in : y ∈ F) :
    JoinedIn F x y ↔ Joined (⟨x, x_in⟩ : F) (⟨y, y_in⟩ : F) 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} (x_in : x ∈ F) (y_in : y ∈ F)
Goal: JoinedIn F x y ↔ Joined ⟨x, x_in⟩ ⟨y, y_in⟩
-- joinedIn_univ
@[simp]
theorem joinedIn_univ : JoinedIn univ x y ↔ Joined x y 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X}
Goal: JoinedIn Set.univ x y ↔ Joined x y
-- JoinedIn.mono
theorem JoinedIn.mono {U V : Set X} (h : JoinedIn U x y) (hUV : U ⊆ V) : JoinedIn V x y 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {U V : Set X} (h : JoinedIn U x y) (hUV : U ⊆ V)
Goal: JoinedIn V x y
-- JoinedIn.refl
theorem JoinedIn.refl (h : x ∈ F) : JoinedIn F x x 
Arguments: {X : Type u_1} [TopologicalSpace X] {x : X} {F : Set X} (h : x ∈ F)
Goal: JoinedIn F x x
-- JoinedIn.symm
@[symm]
theorem JoinedIn.symm (h : JoinedIn F x y) : JoinedIn F y x 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} (h : JoinedIn F x y)
Goal: JoinedIn F y x
-- JoinedIn.trans
theorem JoinedIn.trans (hxy : JoinedIn F x y) (hyz : JoinedIn F y z) : JoinedIn F x z 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y z : X} {F : Set X} (hxy : JoinedIn F x y) (hyz : JoinedIn F y z)
Goal: JoinedIn F x z
-- Specializes.joinedIn
theorem Specializes.joinedIn (h : x ⤳ y) (hx : x ∈ F) (hy : y ∈ F) : JoinedIn F x y 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} (h : x ⤳ y) (hx : x ∈ F) (hy : y ∈ F)
Goal: JoinedIn F x y
-- Inseparable.joinedIn
theorem Inseparable.joinedIn (h : Inseparable x y) (hx : x ∈ F) (hy : y ∈ F) : JoinedIn F x y 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} (h : Inseparable x y) (hx : x ∈ F) (hy : y ∈ F)
Goal: JoinedIn F x y
-- mem_pathComponent_self
@[simp]
theorem mem_pathComponent_self (x : X) : x ∈ pathComponent x 
Arguments: {X : Type u_1} [TopologicalSpace X] (x : X)
Goal: x ∈ pathComponent x
-- pathComponent.nonempty
@[simp]
theorem pathComponent.nonempty (x : X) : (pathComponent x).Nonempty 
Arguments: {X : Type u_1} [TopologicalSpace X] (x : X)
Goal: (pathComponent x).Nonempty
-- mem_pathComponent_of_mem
theorem mem_pathComponent_of_mem (h : x ∈ pathComponent y) : y ∈ pathComponent x 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} (h : x ∈ pathComponent y)
Goal: y ∈ pathComponent x
-- pathComponent_symm
theorem pathComponent_symm : x ∈ pathComponent y ↔ y ∈ pathComponent x 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X}
Goal: x ∈ pathComponent y ↔ y ∈ pathComponent x
-- pathComponent_congr
theorem pathComponent_congr (h : x ∈ pathComponent y) : pathComponent x = pathComponent y 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} (h : x ∈ pathComponent y)
Goal: pathComponent x = pathComponent y
-- pathComponent_subset_component
theorem pathComponent_subset_component (x : X) : pathComponent x ⊆ connectedComponent x 
Arguments: {X : Type u_1} [TopologicalSpace X] (x : X)
Goal: pathComponent x ⊆ connectedComponent x
-- pathComponentIn_univ
@[simp]
theorem pathComponentIn_univ (x : X) : pathComponentIn x univ = pathComponent x 
Arguments: {X : Type u_1} [TopologicalSpace X] (x : X)
Goal: pathComponentIn x Set.univ = pathComponent x
-- Joined.mem_pathComponent
theorem Joined.mem_pathComponent (hyz : Joined y z) (hxy : y ∈ pathComponent x) :
    z ∈ pathComponent x 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y z : X} (hyz : Joined y z) (hxy : y ∈ pathComponent x)
Goal: z ∈ pathComponent x
-- isPathConnected_iff_eq
theorem isPathConnected_iff_eq : IsPathConnected F ↔ ∃ x ∈ F, pathComponentIn x F = F 
Arguments: {X : Type u_1} [TopologicalSpace X] {F : Set X}
Goal: IsPathConnected F ↔ ∃ x ∈ F, pathComponentIn x F = F
-- IsPathConnected.joinedIn
theorem IsPathConnected.joinedIn (h : IsPathConnected F) :
    ∀ᵉ (x ∈ F) (y ∈ F), JoinedIn F x y 
Arguments: {X : Type u_1} [TopologicalSpace X] {F : Set X} (h : IsPathConnected F) (x : X)
Goal: x ∈ F → ∀ y ∈ F, JoinedIn F x y
-- isPathConnected_iff
theorem isPathConnected_iff :
    IsPathConnected F ↔ F.Nonempty ∧ ∀ᵉ (x ∈ F) (y ∈ F), JoinedIn F x y 
Arguments: {X : Type u_1} [TopologicalSpace X] {F : Set X}
Goal: IsPathConnected F ↔ F.Nonempty ∧ ∀ x ∈ F, ∀ y ∈ F, JoinedIn F x y
-- IsPathConnected.image'
theorem IsPathConnected.image' (hF : IsPathConnected F)
    {f : X → Y} (hf : ContinuousOn f F) : IsPathConnected (f '' F) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {F : Set X} (hF : IsPathConnected F) {f : X → Y} (hf : ContinuousOn f F)
Goal: IsPathConnected (f '' F)
-- IsPathConnected.image
theorem IsPathConnected.image (hF : IsPathConnected F) {f : X → Y}
    (hf : Continuous f) : IsPathConnected (f '' F) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {F : Set X} (hF : IsPathConnected F) {f : X → Y} (hf : Continuous f)
Goal: IsPathConnected (f '' F)
-- Inducing.isPathConnected_iff
nonrec theorem Inducing.isPathConnected_iff {f : X → Y} (hf : Inducing f) :
    IsPathConnected F ↔ IsPathConnected (f '' F) 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {F : Set X} {f : X → Y} (hf : Inducing f)
Goal: IsPathConnected F ↔ IsPathConnected (f '' F)
-- Homeomorph.isPathConnected_image
@[simp]
theorem Homeomorph.isPathConnected_image {s : Set X} (h : X ≃ₜ Y) :
    IsPathConnected (h '' s) ↔ IsPathConnected s 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {s : Set X} (h : X ≃ₜ Y)
Goal: IsPathConnected (⇑h '' s) ↔ IsPathConnected s
-- Homeomorph.isPathConnected_preimage
@[simp]
theorem Homeomorph.isPathConnected_preimage {s : Set Y} (h : X ≃ₜ Y) :
    IsPathConnected (h ⁻¹' s) ↔ IsPathConnected s 
Arguments: {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {s : Set Y} (h : X ≃ₜ Y)
Goal: IsPathConnected (⇑h ⁻¹' s) ↔ IsPathConnected s
-- IsPathConnected.mem_pathComponent
theorem IsPathConnected.mem_pathComponent (h : IsPathConnected F) (x_in : x ∈ F) (y_in : y ∈ F) :
    y ∈ pathComponent x 
Arguments: {X : Type u_1} [TopologicalSpace X] {x y : X} {F : Set X} (h : IsPathConnected F) (x_in : x ∈ F) (y_in : y ∈ F)
Goal: y ∈ pathComponent x
-- IsPathConnected.subset_pathComponent
theorem IsPathConnected.subset_pathComponent (h : IsPathConnected F) (x_in : x ∈ F) :
    F ⊆ pathComponent x 
Arguments: {X : Type u_1} [TopologicalSpace X] {x : X} {F : Set X} (h : IsPathConnected F) (x_in : x ∈ F)
Goal: F ⊆ pathComponent x
-- isPathConnected_singleton
theorem isPathConnected_singleton (x : X) : IsPathConnected ({x} : Set X) 
Arguments: {X : Type u_1} [TopologicalSpace X] (x : X)
Goal: IsPathConnected {x}
-- IsPathConnected.union
theorem IsPathConnected.union {U V : Set X} (hU : IsPathConnected U) (hV : IsPathConnected V)
    (hUV : (U ∩ V).Nonempty) : IsPathConnected (U ∪ V) 
Arguments: {X : Type u_1} [TopologicalSpace X] {U V : Set X} (hU : IsPathConnected U) (hV : IsPathConnected V) (hUV : (U ∩ V).Nonempty)
Goal: IsPathConnected (U ∪ V)
-- IsPathConnected.preimage_coe
theorem IsPathConnected.preimage_coe {U W : Set X} (hW : IsPathConnected W) (hWU : W ⊆ U) :
    IsPathConnected (((↑) : U → X) ⁻¹' W) 
Arguments: {X : Type u_1} [TopologicalSpace X] {U W : Set X} (hW : IsPathConnected W) (hWU : W ⊆ U)
Goal: IsPathConnected (Subtype.val ⁻¹' W)
-- IsPathConnected.exists_path_through_family
theorem IsPathConnected.exists_path_through_family {n : ℕ}
    {s : Set X} (h : IsPathConnected s) (p : Fin (n + 1) → X) (hp : ∀ i, p i ∈ s) :
    ∃ γ : Path (p 0) (p n), range γ ⊆ s ∧ ∀ i, p i ∈ range γ 
Arguments: {X : Type u_1} [TopologicalSpace X] {n : ℕ} {s : Set X} (h : IsPathConnected s) (p : Fin (n + 1) → X) (hp : ∀ (i : Fin (n + 1)), p i ∈ s)
Goal: ∃ γ, Set.range ⇑γ ⊆ s ∧ ∀ (i : Fin (n + 1)), p i ∈ Set.range ⇑γ
-- IsPathConnected.exists_path_through_family'
theorem IsPathConnected.exists_path_through_family' {n : ℕ}
    {s : Set X} (h : IsPathConnected s) (p : Fin (n + 1) → X) (hp : ∀ i, p i ∈ s) :
    ∃ (γ : Path (p 0) (p n)) (t : Fin (n + 1) → I), (∀ t, γ t ∈ s) ∧ ∀ i, γ (t i) = p i 
Arguments: {X : Type u_1} [TopologicalSpace X] {n : ℕ} {s : Set X} (h : IsPathConnected s) (p : Fin (n + 1) → X) (hp : ∀ (i : Fin (n + 1)), p i ∈ s)
Goal: ∃ γ t, (∀ (t : ↑I), γ t ∈ s) ∧ ∀ (i : Fin (n + 1)), γ (t i) = p i
-- PathConnectedSpace.nonempty
class PathConnectedSpace (X : Type*) [TopologicalSpace X] : Prop where
    nonempty : Nonempty X
    joined : ∀ x y : X, Joined x y
Arguments: {X : Type u_4} [TopologicalSpace X] [self : PathConnectedSpace X]
Goal: Nonempty X
-- PathConnectedSpace.joined
class PathConnectedSpace (X : Type*) [TopologicalSpace X] : Prop where
    nonempty : Nonempty X
    joined : ∀ x y : X, Joined x y
Arguments: {X : Type u_4} [TopologicalSpace X] [self : PathConnectedSpace X] (x y : X)
Goal: Joined x y