α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
⊢ ∀ᶠ (δ : 𝕜) in 𝓝 1, ↑(homothety x δ) y ∈ s
rw [(NormedAddCommGroup.nhds_basis_norm_lt (1 : 𝕜)).eventually_iff]
case inl
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y = x
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s

case inr
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s
cases' eq_or_ne y x with h h
case inr
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
hxy : 0 < ‖y -ᵥ x‖
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s
case inr
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s
have hxy : 0 < ‖y -ᵥ x‖ := by rwa [norm_pos_iff, vsub_ne_zero]
case inr.intro.intro.intro
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
hxy : 0 < ‖y -ᵥ x‖
u : Set Q
hu₁ : u ⊆ s
hu₂ : IsOpen u
hu₃ : y ∈ u
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s
case inr
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
hxy : 0 < ‖y -ᵥ x‖
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s
obtain ⟨u, hu₁, hu₂, hu₃⟩ := mem_interior.mp hy
case inr.intro.intro.intro.intro.intro
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
hxy : 0 < ‖y -ᵥ x‖
u : Set Q
hu₁ : u ⊆ s
hu₂ : IsOpen u
hu₃ : y ∈ u
ε : ℝ
hε : ε > 0
hyε : Metric.ball y ε ⊆ u
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s
case inr.intro.intro.intro
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
hxy : 0 < ‖y -ᵥ x‖
u : Set Q
hu₁ : u ⊆ s
hu₂ : IsOpen u
hu₃ : y ∈ u
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s
obtain ⟨ε, hε, hyε⟩ := Metric.isOpen_iff.mp hu₂ y hu₃
case inr.intro.intro.intro.intro.intro
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
hxy : 0 < ‖y -ᵥ x‖
u : Set Q
hu₁ : u ⊆ s
hu₂ : IsOpen u
hu₃ : y ∈ u
ε : ℝ
hε : ε > 0
hyε : Metric.ball y ε ⊆ u
δ : 𝕜
hδ : ‖δ - 1‖ < ε / ‖y -ᵥ x‖
⊢ ↑(homothety x δ) y ∈ Metric.ball y ε
case inr.intro.intro.intro.intro.intro
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
hxy : 0 < ‖y -ᵥ x‖
u : Set Q
hu₁ : u ⊆ s
hu₂ : IsOpen u
hu₃ : y ∈ u
ε : ℝ
hε : ε > 0
hyε : Metric.ball y ε ⊆ u
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s
refine' ⟨ε / ‖y -ᵥ x‖, div_pos hε hxy, fun δ (hδ : ‖δ - 1‖ < ε / ‖y -ᵥ x‖) => hu₁ (hyε _)⟩
case inr.intro.intro.intro.intro.intro
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
hxy : 0 < ‖y -ᵥ x‖
u : Set Q
hu₁ : u ⊆ s
hu₂ : IsOpen u
hu₃ : y ∈ u
ε : ℝ
hε : ε > 0
hyε : Metric.ball y ε ⊆ u
δ : 𝕜
hδ✝ : ‖δ - 1‖ * ‖y -ᵥ x‖ < ε
hδ : ‖δ • (y -ᵥ x) - (y -ᵥ x)‖ < ε
⊢ ↑(homothety x δ) y ∈ Metric.ball y ε
case inr.intro.intro.intro.intro.intro
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
hxy : 0 < ‖y -ᵥ x‖
u : Set Q
hu₁ : u ⊆ s
hu₂ : IsOpen u
hu₃ : y ∈ u
ε : ℝ
hε : ε > 0
hyε : Metric.ball y ε ⊆ u
δ : 𝕜
hδ : ‖δ - 1‖ < ε / ‖y -ᵥ x‖
⊢ ↑(homothety x δ) y ∈ Metric.ball y ε
rw [lt_div_iff hxy, ← norm_smul, sub_smul, one_smul] at hδ
no goals
case inr.intro.intro.intro.intro.intro
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
hxy : 0 < ‖y -ᵥ x‖
u : Set Q
hu₁ : u ⊆ s
hu₂ : IsOpen u
hu₃ : y ∈ u
ε : ℝ
hε : ε > 0
hyε : Metric.ball y ε ⊆ u
δ : 𝕜
hδ✝ : ‖δ - 1‖ * ‖y -ᵥ x‖ < ε
hδ : ‖δ • (y -ᵥ x) - (y -ᵥ x)‖ < ε
⊢ ↑(homothety x δ) y ∈ Metric.ball y ε
rwa [homothety_apply, Metric.mem_ball, dist_eq_norm_vsub W, vadd_vsub_eq_sub_vsub]
case inl
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y = x
⊢ 0 < 1 ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < 1} → ↑(homothety x x_1) y ∈ s
case inl
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y = x
⊢ ∃ i, 0 < i ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < i} → ↑(homothety x x_1) y ∈ s
use 1
no goals
case inl
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y = x
⊢ 0 < 1 ∧ ∀ ⦃x_1 : 𝕜⦄, x_1 ∈ {y | ‖y - 1‖ < 1} → ↑(homothety x x_1) y ∈ s
simp [h.symm, interior_subset hy]
no goals
α : Type ?u.85021
V : Type ?u.85024
P : Type ?u.85027
W : Type u_3
Q : Type u_1
inst✝⁸ : SeminormedAddCommGroup V
inst✝⁷ : PseudoMetricSpace P
inst✝⁶ : NormedAddTorsor V P
inst✝⁵ : NormedAddCommGroup W
inst✝⁴ : MetricSpace Q
inst✝³ : NormedAddTorsor W Q
𝕜 : Type u_2
inst✝² : NormedField 𝕜
inst✝¹ : NormedSpace 𝕜 V
inst✝ : NormedSpace 𝕜 W
x : Q
s : Set Q
y : Q
hy : y ∈ interior s
h : y ≠ x
⊢ 0 < ‖y -ᵥ x‖
rwa [norm_pos_iff, vsub_ne_zero]