analysis.normed_space.add_torsor
⟷
Mathlib.Analysis.NormedSpace.AddTorsor
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
For every dist
/norm
lemma in these files, this adds the corresponding nndist
/nnnorm
lemma.
@@ -46,10 +46,18 @@ include V
dist p₁ (homothety p₁ c p₂) = ‖c‖ * dist p₁ p₂ :=
by simp [homothety_def, norm_smul, ← dist_eq_norm_vsub, dist_comm]
+@[simp] lemma nndist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₁ (homothety p₁ c p₂) = ‖c‖₊ * nndist p₁ p₂ :=
+nnreal.eq $ dist_center_homothety _ _ _
+
@[simp] lemma dist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₁ = ‖c‖ * dist p₁ p₂ :=
by rw [dist_comm, dist_center_homothety]
+@[simp] lemma nndist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
+ nndist (homothety p₁ c p₂) p₁ = ‖c‖₊ * nndist p₁ p₂ :=
+nnreal.eq $ dist_homothety_center _ _ _
+
@[simp] lemma dist_line_map_line_map (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
dist (line_map p₁ p₂ c₁) (line_map p₁ p₂ c₂) = dist c₁ c₂ * dist p₁ p₂ :=
begin
@@ -58,6 +66,10 @@ begin
vsub_eq_sub],
end
+@[simp] lemma nndist_line_map_line_map (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
+ nndist (line_map p₁ p₂ c₁) (line_map p₁ p₂ c₂) = nndist c₁ c₂ * nndist p₁ p₂ :=
+nnreal.eq $ dist_line_map_line_map _ _ _ _
+
lemma lipschitz_with_line_map (p₁ p₂ : P) :
lipschitz_with (nndist p₁ p₂) (line_map p₁ p₂ : 𝕜 → P) :=
lipschitz_with.of_dist_le_mul $ λ c₁ c₂,
@@ -67,26 +79,50 @@ lipschitz_with.of_dist_le_mul $ λ c₁ c₂,
dist (line_map p₁ p₂ c) p₁ = ‖c‖ * dist p₁ p₂ :=
by simpa only [line_map_apply_zero, dist_zero_right] using dist_line_map_line_map p₁ p₂ c 0
+@[simp] lemma nndist_line_map_left (p₁ p₂ : P) (c : 𝕜) :
+ nndist (line_map p₁ p₂ c) p₁ = ‖c‖₊ * nndist p₁ p₂ :=
+nnreal.eq $ dist_line_map_left _ _ _
+
@[simp] lemma dist_left_line_map (p₁ p₂ : P) (c : 𝕜) :
dist p₁ (line_map p₁ p₂ c) = ‖c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_line_map_left _ _ _)
+@[simp] lemma nndist_left_line_map (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₁ (line_map p₁ p₂ c) = ‖c‖₊ * nndist p₁ p₂ :=
+nnreal.eq $ dist_left_line_map _ _ _
+
@[simp] lemma dist_line_map_right (p₁ p₂ : P) (c : 𝕜) :
dist (line_map p₁ p₂ c) p₂ = ‖1 - c‖ * dist p₁ p₂ :=
by simpa only [line_map_apply_one, dist_eq_norm'] using dist_line_map_line_map p₁ p₂ c 1
+@[simp] lemma nndist_line_map_right (p₁ p₂ : P) (c : 𝕜) :
+ nndist (line_map p₁ p₂ c) p₂ = ‖1 - c‖₊ * nndist p₁ p₂ :=
+nnreal.eq $ dist_line_map_right _ _ _
+
@[simp] lemma dist_right_line_map (p₁ p₂ : P) (c : 𝕜) :
dist p₂ (line_map p₁ p₂ c) = ‖1 - c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_line_map_right _ _ _)
+@[simp] lemma nndist_right_line_map (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₂ (line_map p₁ p₂ c) = ‖1 - c‖₊ * nndist p₁ p₂ :=
+nnreal.eq $ dist_right_line_map _ _ _
+
@[simp] lemma dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₂ = ‖1 - c‖ * dist p₁ p₂ :=
by rw [homothety_eq_line_map, dist_line_map_right]
+@[simp] lemma nndist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
+ nndist (homothety p₁ c p₂) p₂ = ‖1 - c‖₊ * nndist p₁ p₂ :=
+nnreal.eq $ dist_homothety_self _ _ _
+
@[simp] lemma dist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₂ (homothety p₁ c p₂) = ‖1 - c‖ * dist p₁ p₂ :=
by rw [dist_comm, dist_homothety_self]
+@[simp] lemma nndist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₂ (homothety p₁ c p₂) = ‖1 - c‖₊ * nndist p₁ p₂ :=
+nnreal.eq $ dist_self_homothety _ _ _
+
section invertible_two
variables [invertible (2:𝕜)]
@@ -95,18 +131,34 @@ variables [invertible (2:𝕜)]
dist p₁ (midpoint 𝕜 p₁ p₂) = ‖(2:𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [midpoint, dist_comm, dist_line_map_left, inv_of_eq_inv, ← norm_inv]
+@[simp] lemma nndist_left_midpoint (p₁ p₂ : P) :
+ nndist p₁ (midpoint 𝕜 p₁ p₂) = ‖(2:𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+nnreal.eq $ dist_left_midpoint _ _
+
@[simp] lemma dist_midpoint_left (p₁ p₂ : P) :
dist (midpoint 𝕜 p₁ p₂) p₁ = ‖(2:𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [dist_comm, dist_left_midpoint]
+@[simp] lemma nndist_midpoint_left (p₁ p₂ : P) :
+ nndist (midpoint 𝕜 p₁ p₂) p₁ = ‖(2:𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+nnreal.eq $ dist_midpoint_left _ _
+
@[simp] lemma dist_midpoint_right (p₁ p₂ : P) :
dist (midpoint 𝕜 p₁ p₂) p₂ = ‖(2:𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [midpoint_comm, dist_midpoint_left, dist_comm]
+@[simp] lemma nndist_midpoint_right (p₁ p₂ : P) :
+ nndist (midpoint 𝕜 p₁ p₂) p₂ = ‖(2:𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+nnreal.eq $ dist_midpoint_right _ _
+
@[simp] lemma dist_right_midpoint (p₁ p₂ : P) :
dist p₂ (midpoint 𝕜 p₁ p₂) = ‖(2:𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [dist_comm, dist_midpoint_right]
+@[simp] lemma nndist_right_midpoint (p₁ p₂ : P) :
+ nndist p₂ (midpoint 𝕜 p₁ p₂) = ‖(2:𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+nnreal.eq $ dist_right_midpoint _ _
+
lemma dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
dist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / ‖(2 : 𝕜)‖ :=
begin
@@ -116,6 +168,10 @@ begin
exact div_le_div_of_le_of_nonneg (norm_add_le _ _) (norm_nonneg _),
end
+lemma nndist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
+ nndist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (nndist p₁ p₃ + nndist p₂ p₄) / ‖(2 : 𝕜)‖₊ :=
+dist_midpoint_midpoint_le' _ _ _ _
+
end invertible_two
omit V
@@ -160,6 +216,10 @@ lemma dist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
dist (midpoint ℝ p₁ p₂) (midpoint ℝ p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / 2 :=
by simpa using dist_midpoint_midpoint_le' p₁ p₂ p₃ p₄
+lemma nndist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
+ nndist (midpoint ℝ p₁ p₂) (midpoint ℝ p₃ p₄) ≤ (nndist p₁ p₃ + nndist p₂ p₄) / 2 :=
+dist_midpoint_midpoint_le _ _ _ _
+
include V W
/-- A continuous map between two normed affine spaces is an affine map provided that
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(first ported)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -266,7 +266,7 @@ theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
rw [dist_eq_norm_vsub V, dist_eq_norm_vsub V, dist_eq_norm_vsub V, midpoint_vsub_midpoint] <;>
try infer_instance
rw [midpoint_eq_smul_add, norm_smul, invOf_eq_inv, norm_inv, ← div_eq_inv_mul]
- exact div_le_div_of_le_of_nonneg (norm_add_le _ _) (norm_nonneg _)
+ exact div_le_div_of_nonneg_right (norm_add_le _ _) (norm_nonneg _)
#align dist_midpoint_midpoint_le' dist_midpoint_midpoint_le'
-/
@@ -300,7 +300,7 @@ theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy
obtain ⟨u, hu₁, hu₂, hu₃⟩ := mem_interior.mp hy
obtain ⟨ε, hε, hyε⟩ := metric.is_open_iff.mp hu₂ y hu₃
refine' ⟨ε / ‖y -ᵥ x‖, div_pos hε hxy, fun δ (hδ : ‖δ - 1‖ < ε / ‖y -ᵥ x‖) => hu₁ (hyε _)⟩
- rw [lt_div_iff hxy, ← norm_smul, sub_smul, one_smul] at hδ
+ rw [lt_div_iff hxy, ← norm_smul, sub_smul, one_smul] at hδ
rwa [homothety_apply, Metric.mem_ball, dist_eq_norm_vsub W, vadd_vsub_eq_sub_vsub]
#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interior
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,11 +3,11 @@ Copyright (c) 2020 Joseph Myers. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Joseph Myers, Yury Kudryashov
-/
-import Mathbin.Analysis.NormedSpace.Basic
-import Mathbin.Analysis.Normed.Group.AddTorsor
-import Mathbin.LinearAlgebra.AffineSpace.MidpointZero
-import Mathbin.LinearAlgebra.AffineSpace.AffineSubspace
-import Mathbin.Topology.Instances.RealVectorSpace
+import Analysis.NormedSpace.Basic
+import Analysis.Normed.Group.AddTorsor
+import LinearAlgebra.AffineSpace.MidpointZero
+import LinearAlgebra.AffineSpace.AffineSubspace
+import Topology.Instances.RealVectorSpace
#align_import analysis.normed_space.add_torsor from "leanprover-community/mathlib"@"837f72de63ad6cd96519cde5f1ffd5ed8d280ad0"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,11 +2,6 @@
Copyright (c) 2020 Joseph Myers. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Joseph Myers, Yury Kudryashov
-
-! This file was ported from Lean 3 source module analysis.normed_space.add_torsor
-! leanprover-community/mathlib commit 837f72de63ad6cd96519cde5f1ffd5ed8d280ad0
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.Analysis.NormedSpace.Basic
import Mathbin.Analysis.Normed.Group.AddTorsor
@@ -14,6 +9,8 @@ import Mathbin.LinearAlgebra.AffineSpace.MidpointZero
import Mathbin.LinearAlgebra.AffineSpace.AffineSubspace
import Mathbin.Topology.Instances.RealVectorSpace
+#align_import analysis.normed_space.add_torsor from "leanprover-community/mathlib"@"837f72de63ad6cd96519cde5f1ffd5ed8d280ad0"
+
/-!
# Torsors of normed space actions.
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -39,6 +39,7 @@ variable {𝕜 : Type _} [NormedField 𝕜] [NormedSpace 𝕜 V] [NormedSpace
open AffineMap
+#print AffineSubspace.isClosed_direction_iff /-
theorem AffineSubspace.isClosed_direction_iff (s : AffineSubspace 𝕜 Q) :
IsClosed (s.direction : Set W) ↔ IsClosed (s : Set Q) :=
by
@@ -47,32 +48,40 @@ theorem AffineSubspace.isClosed_direction_iff (s : AffineSubspace 𝕜 Q) :
AffineSubspace.coe_direction_eq_vsub_set_right hx]
rfl
#align affine_subspace.is_closed_direction_iff AffineSubspace.isClosed_direction_iff
+-/
-include V
-
+#print dist_center_homothety /-
@[simp]
theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₁ (homothety p₁ c p₂) = ‖c‖ * dist p₁ p₂ := by
simp [homothety_def, norm_smul, ← dist_eq_norm_vsub, dist_comm]
#align dist_center_homothety dist_center_homothety
+-/
+#print nndist_center_homothety /-
@[simp]
theorem nndist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
nndist p₁ (homothety p₁ c p₂) = ‖c‖₊ * nndist p₁ p₂ :=
NNReal.eq <| dist_center_homothety _ _ _
#align nndist_center_homothety nndist_center_homothety
+-/
+#print dist_homothety_center /-
@[simp]
theorem dist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₁ = ‖c‖ * dist p₁ p₂ := by rw [dist_comm, dist_center_homothety]
#align dist_homothety_center dist_homothety_center
+-/
+#print nndist_homothety_center /-
@[simp]
theorem nndist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
nndist (homothety p₁ c p₂) p₁ = ‖c‖₊ * nndist p₁ p₂ :=
NNReal.eq <| dist_homothety_center _ _ _
#align nndist_homothety_center nndist_homothety_center
+-/
+#print dist_lineMap_lineMap /-
@[simp]
theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
dist (lineMap p₁ p₂ c₁) (lineMap p₁ p₂ c₂) = dist c₁ c₂ * dist p₁ p₂ :=
@@ -81,12 +90,15 @@ theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
simp only [line_map_apply, dist_eq_norm_vsub, vadd_vsub_vadd_cancel_right, ← sub_smul, norm_smul,
vsub_eq_sub]
#align dist_line_map_line_map dist_lineMap_lineMap
+-/
+#print nndist_lineMap_lineMap /-
@[simp]
theorem nndist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
nndist (lineMap p₁ p₂ c₁) (lineMap p₁ p₂ c₂) = nndist c₁ c₂ * nndist p₁ p₂ :=
NNReal.eq <| dist_lineMap_lineMap _ _ _ _
#align nndist_line_map_line_map nndist_lineMap_lineMap
+-/
#print lipschitzWith_lineMap /-
theorem lipschitzWith_lineMap (p₁ p₂ : P) : LipschitzWith (nndist p₁ p₂) (lineMap p₁ p₂ : 𝕜 → P) :=
@@ -95,121 +107,162 @@ theorem lipschitzWith_lineMap (p₁ p₂ : P) : LipschitzWith (nndist p₁ p₂)
#align lipschitz_with_line_map lipschitzWith_lineMap
-/
+#print dist_lineMap_left /-
@[simp]
theorem dist_lineMap_left (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₁ = ‖c‖ * dist p₁ p₂ := by
simpa only [line_map_apply_zero, dist_zero_right] using dist_lineMap_lineMap p₁ p₂ c 0
#align dist_line_map_left dist_lineMap_left
+-/
+#print nndist_lineMap_left /-
@[simp]
theorem nndist_lineMap_left (p₁ p₂ : P) (c : 𝕜) :
nndist (lineMap p₁ p₂ c) p₁ = ‖c‖₊ * nndist p₁ p₂ :=
NNReal.eq <| dist_lineMap_left _ _ _
#align nndist_line_map_left nndist_lineMap_left
+-/
+#print dist_left_lineMap /-
@[simp]
theorem dist_left_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₁ (lineMap p₁ p₂ c) = ‖c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_lineMap_left _ _ _)
#align dist_left_line_map dist_left_lineMap
+-/
+#print nndist_left_lineMap /-
@[simp]
theorem nndist_left_lineMap (p₁ p₂ : P) (c : 𝕜) :
nndist p₁ (lineMap p₁ p₂ c) = ‖c‖₊ * nndist p₁ p₂ :=
NNReal.eq <| dist_left_lineMap _ _ _
#align nndist_left_line_map nndist_left_lineMap
+-/
+#print dist_lineMap_right /-
@[simp]
theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖ * dist p₁ p₂ :=
by simpa only [line_map_apply_one, dist_eq_norm'] using dist_lineMap_lineMap p₁ p₂ c 1
#align dist_line_map_right dist_lineMap_right
+-/
+#print nndist_lineMap_right /-
@[simp]
theorem nndist_lineMap_right (p₁ p₂ : P) (c : 𝕜) :
nndist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖₊ * nndist p₁ p₂ :=
NNReal.eq <| dist_lineMap_right _ _ _
#align nndist_line_map_right nndist_lineMap_right
+-/
+#print dist_right_lineMap /-
@[simp]
theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁ p₂ c) = ‖1 - c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_lineMap_right _ _ _)
#align dist_right_line_map dist_right_lineMap
+-/
+#print nndist_right_lineMap /-
@[simp]
theorem nndist_right_lineMap (p₁ p₂ : P) (c : 𝕜) :
nndist p₂ (lineMap p₁ p₂ c) = ‖1 - c‖₊ * nndist p₁ p₂ :=
NNReal.eq <| dist_right_lineMap _ _ _
#align nndist_right_line_map nndist_right_lineMap
+-/
+#print dist_homothety_self /-
@[simp]
theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₂ = ‖1 - c‖ * dist p₁ p₂ := by
rw [homothety_eq_line_map, dist_lineMap_right]
#align dist_homothety_self dist_homothety_self
+-/
+#print nndist_homothety_self /-
@[simp]
theorem nndist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
nndist (homothety p₁ c p₂) p₂ = ‖1 - c‖₊ * nndist p₁ p₂ :=
NNReal.eq <| dist_homothety_self _ _ _
#align nndist_homothety_self nndist_homothety_self
+-/
+#print dist_self_homothety /-
@[simp]
theorem dist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₂ (homothety p₁ c p₂) = ‖1 - c‖ * dist p₁ p₂ := by rw [dist_comm, dist_homothety_self]
#align dist_self_homothety dist_self_homothety
+-/
+#print nndist_self_homothety /-
@[simp]
theorem nndist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
nndist p₂ (homothety p₁ c p₂) = ‖1 - c‖₊ * nndist p₁ p₂ :=
NNReal.eq <| dist_self_homothety _ _ _
#align nndist_self_homothety nndist_self_homothety
+-/
section invertibleTwo
variable [Invertible (2 : 𝕜)]
+#print dist_left_midpoint /-
@[simp]
theorem dist_left_midpoint (p₁ p₂ : P) : dist p₁ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
rw [midpoint, dist_comm, dist_lineMap_left, invOf_eq_inv, ← norm_inv]
#align dist_left_midpoint dist_left_midpoint
+-/
+#print nndist_left_midpoint /-
@[simp]
theorem nndist_left_midpoint (p₁ p₂ : P) :
nndist p₁ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
NNReal.eq <| dist_left_midpoint _ _
#align nndist_left_midpoint nndist_left_midpoint
+-/
+#print dist_midpoint_left /-
@[simp]
theorem dist_midpoint_left (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₁ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
rw [dist_comm, dist_left_midpoint]
#align dist_midpoint_left dist_midpoint_left
+-/
+#print nndist_midpoint_left /-
@[simp]
theorem nndist_midpoint_left (p₁ p₂ : P) :
nndist (midpoint 𝕜 p₁ p₂) p₁ = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
NNReal.eq <| dist_midpoint_left _ _
#align nndist_midpoint_left nndist_midpoint_left
+-/
+#print dist_midpoint_right /-
@[simp]
theorem dist_midpoint_right (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₂ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [midpoint_comm, dist_midpoint_left, dist_comm]
#align dist_midpoint_right dist_midpoint_right
+-/
+#print nndist_midpoint_right /-
@[simp]
theorem nndist_midpoint_right (p₁ p₂ : P) :
nndist (midpoint 𝕜 p₁ p₂) p₂ = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
NNReal.eq <| dist_midpoint_right _ _
#align nndist_midpoint_right nndist_midpoint_right
+-/
+#print dist_right_midpoint /-
@[simp]
theorem dist_right_midpoint (p₁ p₂ : P) : dist p₂ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [dist_comm, dist_midpoint_right]
#align dist_right_midpoint dist_right_midpoint
+-/
+#print nndist_right_midpoint /-
@[simp]
theorem nndist_right_midpoint (p₁ p₂ : P) :
nndist p₂ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
NNReal.eq <| dist_right_midpoint _ _
#align nndist_right_midpoint nndist_right_midpoint
+-/
+#print dist_midpoint_midpoint_le' /-
theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
dist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / ‖(2 : 𝕜)‖ :=
by
@@ -218,27 +271,29 @@ theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
rw [midpoint_eq_smul_add, norm_smul, invOf_eq_inv, norm_inv, ← div_eq_inv_mul]
exact div_le_div_of_le_of_nonneg (norm_add_le _ _) (norm_nonneg _)
#align dist_midpoint_midpoint_le' dist_midpoint_midpoint_le'
+-/
+#print nndist_midpoint_midpoint_le' /-
theorem nndist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
nndist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (nndist p₁ p₃ + nndist p₂ p₄) / ‖(2 : 𝕜)‖₊ :=
dist_midpoint_midpoint_le' _ _ _ _
#align nndist_midpoint_midpoint_le' nndist_midpoint_midpoint_le'
+-/
end invertibleTwo
-omit V
-
-include W
-
+#print antilipschitzWith_lineMap /-
theorem antilipschitzWith_lineMap {p₁ p₂ : Q} (h : p₁ ≠ p₂) :
AntilipschitzWith (nndist p₁ p₂)⁻¹ (lineMap p₁ p₂ : 𝕜 → Q) :=
AntilipschitzWith.of_le_mul_dist fun c₁ c₂ => by
rw [dist_lineMap_lineMap, NNReal.coe_inv, ← dist_nndist, mul_left_comm,
inv_mul_cancel (dist_ne_zero.2 h), mul_one]
#align antilipschitz_with_line_map antilipschitzWith_lineMap
+-/
variable (𝕜)
+#print eventually_homothety_mem_of_mem_interior /-
theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy : y ∈ interior s) :
∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ y ∈ s :=
by
@@ -251,7 +306,9 @@ theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy
rw [lt_div_iff hxy, ← norm_smul, sub_smul, one_smul] at hδ
rwa [homothety_apply, Metric.mem_ball, dist_eq_norm_vsub W, vadd_vsub_eq_sub_vsub]
#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interior
+-/
+#print eventually_homothety_image_subset_of_finite_subset_interior /-
theorem eventually_homothety_image_subset_of_finite_subset_interior (x : Q) {s : Set Q} {t : Set Q}
(ht : t.Finite) (h : t ⊆ interior s) : ∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ '' t ⊆ s :=
by
@@ -262,22 +319,25 @@ theorem eventually_homothety_image_subset_of_finite_subset_interior (x : Q) {s :
intro y hy
exact eventually_homothety_mem_of_mem_interior 𝕜 x (h hy)
#align eventually_homothety_image_subset_of_finite_subset_interior eventually_homothety_image_subset_of_finite_subset_interior
+-/
end NormedSpace
variable [NormedSpace ℝ V] [NormedSpace ℝ W]
+#print dist_midpoint_midpoint_le /-
theorem dist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
dist (midpoint ℝ p₁ p₂) (midpoint ℝ p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / 2 := by
simpa using dist_midpoint_midpoint_le' p₁ p₂ p₃ p₄
#align dist_midpoint_midpoint_le dist_midpoint_midpoint_le
+-/
+#print nndist_midpoint_midpoint_le /-
theorem nndist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
nndist (midpoint ℝ p₁ p₂) (midpoint ℝ p₃ p₄) ≤ (nndist p₁ p₃ + nndist p₂ p₄) / 2 :=
dist_midpoint_midpoint_le _ _ _ _
#align nndist_midpoint_midpoint_le nndist_midpoint_midpoint_le
-
-include V W
+-/
#print AffineMap.ofMapMidpoint /-
/-- A continuous map between two normed affine spaces is an affine map provided that
mathlib commit https://github.com/leanprover-community/mathlib/commit/5f25c089cb34db4db112556f23c50d12da81b297
@@ -290,7 +290,7 @@ def AffineMap.ofMapMidpoint (f : P → Q) (h : ∀ x y, f (midpoint ℝ x y) = m
f ∘ AffineEquiv.vaddConst ℝ (Classical.arbitrary P))
(by simp) fun x y => by simp [h]).toRealLinearMap <|
by
- apply_rules [Continuous.vadd, Continuous.vsub, continuous_const, hfc.comp, continuous_id] ))
+ apply_rules [Continuous.vadd, Continuous.vsub, continuous_const, hfc.comp, continuous_id]))
(Classical.arbitrary P) fun p => by simp
#align affine_map.of_map_midpoint AffineMap.ofMapMidpoint
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -248,7 +248,7 @@ theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy
obtain ⟨u, hu₁, hu₂, hu₃⟩ := mem_interior.mp hy
obtain ⟨ε, hε, hyε⟩ := metric.is_open_iff.mp hu₂ y hu₃
refine' ⟨ε / ‖y -ᵥ x‖, div_pos hε hxy, fun δ (hδ : ‖δ - 1‖ < ε / ‖y -ᵥ x‖) => hu₁ (hyε _)⟩
- rw [lt_div_iff hxy, ← norm_smul, sub_smul, one_smul] at hδ
+ rw [lt_div_iff hxy, ← norm_smul, sub_smul, one_smul] at hδ
rwa [homothety_apply, Metric.mem_ball, dist_eq_norm_vsub W, vadd_vsub_eq_sub_vsub]
#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interior
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Joseph Myers, Yury Kudryashov
! This file was ported from Lean 3 source module analysis.normed_space.add_torsor
-! leanprover-community/mathlib commit ce38d86c0b2d427ce208c3cee3159cb421d2b3c4
+! leanprover-community/mathlib commit 837f72de63ad6cd96519cde5f1ffd5ed8d280ad0
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -56,11 +56,23 @@ theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
simp [homothety_def, norm_smul, ← dist_eq_norm_vsub, dist_comm]
#align dist_center_homothety dist_center_homothety
+@[simp]
+theorem nndist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₁ (homothety p₁ c p₂) = ‖c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_center_homothety _ _ _
+#align nndist_center_homothety nndist_center_homothety
+
@[simp]
theorem dist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₁ = ‖c‖ * dist p₁ p₂ := by rw [dist_comm, dist_center_homothety]
#align dist_homothety_center dist_homothety_center
+@[simp]
+theorem nndist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
+ nndist (homothety p₁ c p₂) p₁ = ‖c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_homothety_center _ _ _
+#align nndist_homothety_center nndist_homothety_center
+
@[simp]
theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
dist (lineMap p₁ p₂ c₁) (lineMap p₁ p₂ c₂) = dist c₁ c₂ * dist p₁ p₂ :=
@@ -70,6 +82,12 @@ theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
vsub_eq_sub]
#align dist_line_map_line_map dist_lineMap_lineMap
+@[simp]
+theorem nndist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
+ nndist (lineMap p₁ p₂ c₁) (lineMap p₁ p₂ c₂) = nndist c₁ c₂ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_lineMap_lineMap _ _ _ _
+#align nndist_line_map_line_map nndist_lineMap_lineMap
+
#print lipschitzWith_lineMap /-
theorem lipschitzWith_lineMap (p₁ p₂ : P) : LipschitzWith (nndist p₁ p₂) (lineMap p₁ p₂ : 𝕜 → P) :=
LipschitzWith.of_dist_le_mul fun c₁ c₂ =>
@@ -82,32 +100,68 @@ theorem dist_lineMap_left (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c
simpa only [line_map_apply_zero, dist_zero_right] using dist_lineMap_lineMap p₁ p₂ c 0
#align dist_line_map_left dist_lineMap_left
+@[simp]
+theorem nndist_lineMap_left (p₁ p₂ : P) (c : 𝕜) :
+ nndist (lineMap p₁ p₂ c) p₁ = ‖c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_lineMap_left _ _ _
+#align nndist_line_map_left nndist_lineMap_left
+
@[simp]
theorem dist_left_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₁ (lineMap p₁ p₂ c) = ‖c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_lineMap_left _ _ _)
#align dist_left_line_map dist_left_lineMap
+@[simp]
+theorem nndist_left_lineMap (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₁ (lineMap p₁ p₂ c) = ‖c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_left_lineMap _ _ _
+#align nndist_left_line_map nndist_left_lineMap
+
@[simp]
theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖ * dist p₁ p₂ :=
by simpa only [line_map_apply_one, dist_eq_norm'] using dist_lineMap_lineMap p₁ p₂ c 1
#align dist_line_map_right dist_lineMap_right
+@[simp]
+theorem nndist_lineMap_right (p₁ p₂ : P) (c : 𝕜) :
+ nndist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_lineMap_right _ _ _
+#align nndist_line_map_right nndist_lineMap_right
+
@[simp]
theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁ p₂ c) = ‖1 - c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_lineMap_right _ _ _)
#align dist_right_line_map dist_right_lineMap
+@[simp]
+theorem nndist_right_lineMap (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₂ (lineMap p₁ p₂ c) = ‖1 - c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_right_lineMap _ _ _
+#align nndist_right_line_map nndist_right_lineMap
+
@[simp]
theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₂ = ‖1 - c‖ * dist p₁ p₂ := by
rw [homothety_eq_line_map, dist_lineMap_right]
#align dist_homothety_self dist_homothety_self
+@[simp]
+theorem nndist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
+ nndist (homothety p₁ c p₂) p₂ = ‖1 - c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_homothety_self _ _ _
+#align nndist_homothety_self nndist_homothety_self
+
@[simp]
theorem dist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₂ (homothety p₁ c p₂) = ‖1 - c‖ * dist p₁ p₂ := by rw [dist_comm, dist_homothety_self]
#align dist_self_homothety dist_self_homothety
+@[simp]
+theorem nndist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₂ (homothety p₁ c p₂) = ‖1 - c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_self_homothety _ _ _
+#align nndist_self_homothety nndist_self_homothety
+
section invertibleTwo
variable [Invertible (2 : 𝕜)]
@@ -117,21 +171,45 @@ theorem dist_left_midpoint (p₁ p₂ : P) : dist p₁ (midpoint 𝕜 p₁ p₂)
rw [midpoint, dist_comm, dist_lineMap_left, invOf_eq_inv, ← norm_inv]
#align dist_left_midpoint dist_left_midpoint
+@[simp]
+theorem nndist_left_midpoint (p₁ p₂ : P) :
+ nndist p₁ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_left_midpoint _ _
+#align nndist_left_midpoint nndist_left_midpoint
+
@[simp]
theorem dist_midpoint_left (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₁ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
rw [dist_comm, dist_left_midpoint]
#align dist_midpoint_left dist_midpoint_left
+@[simp]
+theorem nndist_midpoint_left (p₁ p₂ : P) :
+ nndist (midpoint 𝕜 p₁ p₂) p₁ = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_midpoint_left _ _
+#align nndist_midpoint_left nndist_midpoint_left
+
@[simp]
theorem dist_midpoint_right (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₂ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [midpoint_comm, dist_midpoint_left, dist_comm]
#align dist_midpoint_right dist_midpoint_right
+@[simp]
+theorem nndist_midpoint_right (p₁ p₂ : P) :
+ nndist (midpoint 𝕜 p₁ p₂) p₂ = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_midpoint_right _ _
+#align nndist_midpoint_right nndist_midpoint_right
+
@[simp]
theorem dist_right_midpoint (p₁ p₂ : P) : dist p₂ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [dist_comm, dist_midpoint_right]
#align dist_right_midpoint dist_right_midpoint
+@[simp]
+theorem nndist_right_midpoint (p₁ p₂ : P) :
+ nndist p₂ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_right_midpoint _ _
+#align nndist_right_midpoint nndist_right_midpoint
+
theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
dist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / ‖(2 : 𝕜)‖ :=
by
@@ -141,6 +219,11 @@ theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
exact div_le_div_of_le_of_nonneg (norm_add_le _ _) (norm_nonneg _)
#align dist_midpoint_midpoint_le' dist_midpoint_midpoint_le'
+theorem nndist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
+ nndist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (nndist p₁ p₃ + nndist p₂ p₄) / ‖(2 : 𝕜)‖₊ :=
+ dist_midpoint_midpoint_le' _ _ _ _
+#align nndist_midpoint_midpoint_le' nndist_midpoint_midpoint_le'
+
end invertibleTwo
omit V
@@ -189,6 +272,11 @@ theorem dist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
simpa using dist_midpoint_midpoint_le' p₁ p₂ p₃ p₄
#align dist_midpoint_midpoint_le dist_midpoint_midpoint_le
+theorem nndist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
+ nndist (midpoint ℝ p₁ p₂) (midpoint ℝ p₃ p₄) ≤ (nndist p₁ p₃ + nndist p₂ p₄) / 2 :=
+ dist_midpoint_midpoint_le _ _ _ _
+#align nndist_midpoint_midpoint_le nndist_midpoint_midpoint_le
+
include V W
#print AffineMap.ofMapMidpoint /-
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -26,7 +26,7 @@ This file contains lemmas about normed additive torsors over normed spaces.
noncomputable section
-open NNReal Topology
+open scoped NNReal Topology
open Filter
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -39,12 +39,6 @@ variable {𝕜 : Type _} [NormedField 𝕜] [NormedSpace 𝕜 V] [NormedSpace
open AffineMap
-/- warning: affine_subspace.is_closed_direction_iff -> AffineSubspace.isClosed_direction_iff is a dubious translation:
-lean 3 declaration is
- forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (s : AffineSubspace.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)), Iff (IsClosed.{u1} W (UniformSpace.toTopologicalSpace.{u1} W (PseudoMetricSpace.toUniformSpace.{u1} W (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} W (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Submodule.{u3, u1} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u1} W (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4)) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9)) (Set.{u1} W) (HasLiftT.mk.{succ u1, succ u1} (Submodule.{u3, u1} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u1} W (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4)) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9)) (Set.{u1} W) (CoeTCₓ.coe.{succ u1, succ u1} (Submodule.{u3, u1} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u1} W (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4)) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9)) (Set.{u1} W) (SetLike.Set.hasCoeT.{u1, u1} (Submodule.{u3, u1} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u1} W (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4)) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9)) W (Submodule.setLike.{u3, u1} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u1} W (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4)) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9))))) (AffineSubspace.direction.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) s))) (IsClosed.{u2} Q (UniformSpace.toTopologicalSpace.{u2} Q (PseudoMetricSpace.toUniformSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (AffineSubspace.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (Set.{u2} Q) (HasLiftT.mk.{succ u2, succ u2} (AffineSubspace.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (Set.{u2} Q) (CoeTCₓ.coe.{succ u2, succ u2} (AffineSubspace.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (Set.{u2} Q) (SetLike.Set.hasCoeT.{u2, u2} (AffineSubspace.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) Q (AffineSubspace.setLike.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6))))) s))
-but is expected to have type
- forall {W : Type.{u2}} {Q : Type.{u1}} [_inst_4 : NormedAddCommGroup.{u2} W] [_inst_5 : MetricSpace.{u1} Q] [_inst_6 : NormedAddTorsor.{u2, u1} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5)] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4)] (s : AffineSubspace.{u3, u2, u1} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u2, u1} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5) _inst_6)), Iff (IsClosed.{u2} W (UniformSpace.toTopologicalSpace.{u2} W (PseudoMetricSpace.toUniformSpace.{u2} W (SeminormedAddCommGroup.toPseudoMetricSpace.{u2} W (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4)))) (SetLike.coe.{u2, u2} (Submodule.{u3, u2} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u2} W (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4)) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9)) W (Submodule.setLike.{u3, u2} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u2} W (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4)) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9)) (AffineSubspace.direction.{u3, u2, u1} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u2, u1} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5) _inst_6) s))) (IsClosed.{u1} Q (UniformSpace.toTopologicalSpace.{u1} Q (PseudoMetricSpace.toUniformSpace.{u1} Q (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5))) (SetLike.coe.{u1, u1} (AffineSubspace.{u3, u2, u1} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u2, u1} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5) _inst_6)) Q (AffineSubspace.instSetLikeAffineSubspace.{u3, u2, u1} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u2, u1} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5) _inst_6)) s))
-Case conversion may be inaccurate. Consider using '#align affine_subspace.is_closed_direction_iff AffineSubspace.isClosed_direction_iffₓ'. -/
theorem AffineSubspace.isClosed_direction_iff (s : AffineSubspace 𝕜 Q) :
IsClosed (s.direction : Set W) ↔ IsClosed (s : Set Q) :=
by
@@ -56,26 +50,17 @@ theorem AffineSubspace.isClosed_direction_iff (s : AffineSubspace 𝕜 Q) :
include V
-/- warning: dist_center_homothety -> dist_center_homothety is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align dist_center_homothety dist_center_homothetyₓ'. -/
@[simp]
theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₁ (homothety p₁ c p₂) = ‖c‖ * dist p₁ p₂ := by
simp [homothety_def, norm_smul, ← dist_eq_norm_vsub, dist_comm]
#align dist_center_homothety dist_center_homothety
-/- warning: dist_homothety_center -> dist_homothety_center is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align dist_homothety_center dist_homothety_centerₓ'. -/
@[simp]
theorem dist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₁ = ‖c‖ * dist p₁ p₂ := by rw [dist_comm, dist_center_homothety]
#align dist_homothety_center dist_homothety_center
-/- warning: dist_line_map_line_map -> dist_lineMap_lineMap is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align dist_line_map_line_map dist_lineMap_lineMapₓ'. -/
@[simp]
theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
dist (lineMap p₁ p₂ c₁) (lineMap p₁ p₂ c₂) = dist c₁ c₂ * dist p₁ p₂ :=
@@ -92,50 +77,32 @@ theorem lipschitzWith_lineMap (p₁ p₂ : P) : LipschitzWith (nndist p₁ p₂)
#align lipschitz_with_line_map lipschitzWith_lineMap
-/
-/- warning: dist_line_map_left -> dist_lineMap_left is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align dist_line_map_left dist_lineMap_leftₓ'. -/
@[simp]
theorem dist_lineMap_left (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₁ = ‖c‖ * dist p₁ p₂ := by
simpa only [line_map_apply_zero, dist_zero_right] using dist_lineMap_lineMap p₁ p₂ c 0
#align dist_line_map_left dist_lineMap_left
-/- warning: dist_left_line_map -> dist_left_lineMap is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align dist_left_line_map dist_left_lineMapₓ'. -/
@[simp]
theorem dist_left_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₁ (lineMap p₁ p₂ c) = ‖c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_lineMap_left _ _ _)
#align dist_left_line_map dist_left_lineMap
-/- warning: dist_line_map_right -> dist_lineMap_right is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align dist_line_map_right dist_lineMap_rightₓ'. -/
@[simp]
theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖ * dist p₁ p₂ :=
by simpa only [line_map_apply_one, dist_eq_norm'] using dist_lineMap_lineMap p₁ p₂ c 1
#align dist_line_map_right dist_lineMap_right
-/- warning: dist_right_line_map -> dist_right_lineMap is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align dist_right_line_map dist_right_lineMapₓ'. -/
@[simp]
theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁ p₂ c) = ‖1 - c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_lineMap_right _ _ _)
#align dist_right_line_map dist_right_lineMap
-/- warning: dist_homothety_self -> dist_homothety_self is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align dist_homothety_self dist_homothety_selfₓ'. -/
@[simp]
theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₂ = ‖1 - c‖ * dist p₁ p₂ := by
rw [homothety_eq_line_map, dist_lineMap_right]
#align dist_homothety_self dist_homothety_self
-/- warning: dist_self_homothety -> dist_self_homothety is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align dist_self_homothety dist_self_homothetyₓ'. -/
@[simp]
theorem dist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₂ (homothety p₁ c p₂) = ‖1 - c‖ * dist p₁ p₂ := by rw [dist_comm, dist_homothety_self]
@@ -145,56 +112,26 @@ section invertibleTwo
variable [Invertible (2 : 𝕜)]
-/- warning: dist_left_midpoint -> dist_left_midpoint is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
-Case conversion may be inaccurate. Consider using '#align dist_left_midpoint dist_left_midpointₓ'. -/
@[simp]
theorem dist_left_midpoint (p₁ p₂ : P) : dist p₁ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
rw [midpoint, dist_comm, dist_lineMap_left, invOf_eq_inv, ← norm_inv]
#align dist_left_midpoint dist_left_midpoint
-/- warning: dist_midpoint_left -> dist_midpoint_left is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
-Case conversion may be inaccurate. Consider using '#align dist_midpoint_left dist_midpoint_leftₓ'. -/
@[simp]
theorem dist_midpoint_left (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₁ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
rw [dist_comm, dist_left_midpoint]
#align dist_midpoint_left dist_midpoint_left
-/- warning: dist_midpoint_right -> dist_midpoint_right is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
-Case conversion may be inaccurate. Consider using '#align dist_midpoint_right dist_midpoint_rightₓ'. -/
@[simp]
theorem dist_midpoint_right (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₂ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [midpoint_comm, dist_midpoint_left, dist_comm]
#align dist_midpoint_right dist_midpoint_right
-/- warning: dist_right_midpoint -> dist_right_midpoint is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
-Case conversion may be inaccurate. Consider using '#align dist_right_midpoint dist_right_midpointₓ'. -/
@[simp]
theorem dist_right_midpoint (p₁ p₂ : P) : dist p₂ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [dist_comm, dist_midpoint_right]
#align dist_right_midpoint dist_right_midpoint
-/- warning: dist_midpoint_midpoint_le' -> dist_midpoint_midpoint_le' is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P) (p₃ : P) (p₄ : P), LE.le.{0} Real Real.hasLe (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₃ p₄)) (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (DivInvMonoid.toHasDiv.{0} Real (DivisionRing.toDivInvMonoid.{0} Real Real.divisionRing))) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₃) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ p₄)) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))))
-but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P) (p₃ : P) (p₄ : P), LE.le.{0} Real Real.instLEReal (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₃ p₄)) (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (LinearOrderedField.toDiv.{0} Real Real.instLinearOrderedFieldReal)) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₃) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ p₄)) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))))
-Case conversion may be inaccurate. Consider using '#align dist_midpoint_midpoint_le' dist_midpoint_midpoint_le'ₓ'. -/
theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
dist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / ‖(2 : 𝕜)‖ :=
by
@@ -210,12 +147,6 @@ omit V
include W
-/- warning: antilipschitz_with_line_map -> antilipschitzWith_lineMap is a dubious translation:
-lean 3 declaration is
- forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] {p₁ : Q} {p₂ : Q}, (Ne.{succ u2} Q p₁ p₂) -> (AntilipschitzWith.{u3, u2} 𝕜 Q (PseudoMetricSpace.toPseudoEMetricSpace.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (PseudoMetricSpace.toPseudoEMetricSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)) (Inv.inv.{0} NNReal (DivInvMonoid.toHasInv.{0} NNReal (GroupWithZero.toDivInvMonoid.{0} NNReal (DivisionSemiring.toGroupWithZero.{0} NNReal (Semifield.toDivisionSemiring.{0} NNReal (LinearOrderedSemifield.toSemifield.{0} NNReal (CanonicallyLinearOrderedSemifield.toLinearOrderedSemifield.{0} NNReal NNReal.canonicallyLinearOrderedSemifield)))))) (NNDist.nndist.{u2} Q (PseudoMetricSpace.toNNDist.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)) p₁ p₂)) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) => 𝕜 -> Q) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) p₁ p₂)))
-but is expected to have type
- forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] {p₁ : Q} {p₂ : Q}, (Ne.{succ u3} Q p₁ p₂) -> (AntilipschitzWith.{u2, u3} 𝕜 Q (EMetricSpace.toPseudoEMetricSpace.{u2} 𝕜 (MetricSpace.toEMetricSpace.{u2} 𝕜 (NormedField.toMetricSpace.{u2} 𝕜 _inst_7))) (EMetricSpace.toPseudoEMetricSpace.{u3} Q (MetricSpace.toEMetricSpace.{u3} Q _inst_5)) (Inv.inv.{0} NNReal (CanonicallyLinearOrderedSemifield.toInv.{0} NNReal NNReal.instCanonicallyLinearOrderedSemifieldNNReal) (NNDist.nndist.{u3} Q (PseudoMetricSpace.toNNDist.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)) p₁ p₂)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => Q) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) p₁ p₂)))
-Case conversion may be inaccurate. Consider using '#align antilipschitz_with_line_map antilipschitzWith_lineMapₓ'. -/
theorem antilipschitzWith_lineMap {p₁ p₂ : Q} (h : p₁ ≠ p₂) :
AntilipschitzWith (nndist p₁ p₂)⁻¹ (lineMap p₁ p₂ : 𝕜 → Q) :=
AntilipschitzWith.of_le_mul_dist fun c₁ c₂ => by
@@ -225,9 +156,6 @@ theorem antilipschitzWith_lineMap {p₁ p₂ : Q} (h : p₁ ≠ p₂) :
variable (𝕜)
-/- warning: eventually_homothety_mem_of_mem_interior -> eventually_homothety_mem_of_mem_interior is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interiorₓ'. -/
theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy : y ∈ interior s) :
∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ y ∈ s :=
by
@@ -241,9 +169,6 @@ theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy
rwa [homothety_apply, Metric.mem_ball, dist_eq_norm_vsub W, vadd_vsub_eq_sub_vsub]
#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interior
-/- warning: eventually_homothety_image_subset_of_finite_subset_interior -> eventually_homothety_image_subset_of_finite_subset_interior is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align eventually_homothety_image_subset_of_finite_subset_interior eventually_homothety_image_subset_of_finite_subset_interiorₓ'. -/
theorem eventually_homothety_image_subset_of_finite_subset_interior (x : Q) {s : Set Q} {t : Set Q}
(ht : t.Finite) (h : t ⊆ interior s) : ∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ '' t ⊆ s :=
by
@@ -259,12 +184,6 @@ end NormedSpace
variable [NormedSpace ℝ V] [NormedSpace ℝ W]
-/- warning: dist_midpoint_midpoint_le -> dist_midpoint_midpoint_le is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_7 : NormedSpace.{0, u1} Real V Real.normedField _inst_1] (p₁ : V) (p₂ : V) (p₃ : V) (p₄ : V), LE.le.{0} Real Real.hasLe (Dist.dist.{u1} V (PseudoMetricSpace.toHasDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) (midpoint.{0, u1, u1} Real V V Real.ring (invertibleTwo.{0} Real Real.divisionRing (StrictOrderedSemiring.to_charZero.{0} Real Real.strictOrderedSemiring)) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{0, u1} Real V Real.normedField _inst_1 _inst_7) (addGroupIsAddTorsor.{u1} V (SeminormedAddGroup.toAddGroup.{u1} V (SeminormedAddCommGroup.toSeminormedAddGroup.{u1} V _inst_1))) p₁ p₂) (midpoint.{0, u1, u1} Real V V Real.ring (invertibleTwo.{0} Real Real.divisionRing (StrictOrderedSemiring.to_charZero.{0} Real Real.strictOrderedSemiring)) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{0, u1} Real V Real.normedField _inst_1 _inst_7) (addGroupIsAddTorsor.{u1} V (SeminormedAddGroup.toAddGroup.{u1} V (SeminormedAddCommGroup.toSeminormedAddGroup.{u1} V _inst_1))) p₃ p₄)) (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (DivInvMonoid.toHasDiv.{0} Real (DivisionRing.toDivInvMonoid.{0} Real Real.divisionRing))) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (Dist.dist.{u1} V (PseudoMetricSpace.toHasDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) p₁ p₃) (Dist.dist.{u1} V (PseudoMetricSpace.toHasDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) p₂ p₄)) (OfNat.ofNat.{0} Real 2 (OfNat.mk.{0} Real 2 (bit0.{0} Real Real.hasAdd (One.one.{0} Real Real.hasOne)))))
-but is expected to have type
- forall {V : Type.{u1}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_7 : NormedSpace.{0, u1} Real V Real.normedField _inst_1] (p₁ : V) (p₂ : V) (p₃ : V) (p₄ : V), LE.le.{0} Real Real.instLEReal (Dist.dist.{u1} V (PseudoMetricSpace.toDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) (midpoint.{0, u1, u1} Real V V Real.instRingReal (invertibleTwo.{0} Real Real.instDivisionRingReal (StrictOrderedSemiring.to_charZero.{0} Real Real.strictOrderedSemiring)) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{0, u1} Real V Real.normedField _inst_1 _inst_7) (NormedAddTorsor.toAddTorsor.{u1, u1} V V _inst_1 (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1) (SeminormedAddCommGroup.toNormedAddTorsor.{u1} V _inst_1)) p₁ p₂) (midpoint.{0, u1, u1} Real V V Real.instRingReal (invertibleTwo.{0} Real Real.instDivisionRingReal (StrictOrderedSemiring.to_charZero.{0} Real Real.strictOrderedSemiring)) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{0, u1} Real V Real.normedField _inst_1 _inst_7) (NormedAddTorsor.toAddTorsor.{u1, u1} V V _inst_1 (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1) (SeminormedAddCommGroup.toNormedAddTorsor.{u1} V _inst_1)) p₃ p₄)) (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (LinearOrderedField.toDiv.{0} Real Real.instLinearOrderedFieldReal)) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (Dist.dist.{u1} V (PseudoMetricSpace.toDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) p₁ p₃) (Dist.dist.{u1} V (PseudoMetricSpace.toDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) p₂ p₄)) (OfNat.ofNat.{0} Real 2 (instOfNat.{0} Real 2 Real.natCast (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))
-Case conversion may be inaccurate. Consider using '#align dist_midpoint_midpoint_le dist_midpoint_midpoint_leₓ'. -/
theorem dist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
dist (midpoint ℝ p₁ p₂) (midpoint ℝ p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / 2 := by
simpa using dist_midpoint_midpoint_le' p₁ p₂ p₃ p₄
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -232,9 +232,7 @@ theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy
∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ y ∈ s :=
by
rw [(NormedAddCommGroup.nhds_basis_norm_lt (1 : 𝕜)).eventually_iff]
- cases' eq_or_ne y x with h h
- · use 1
- simp [h.symm, interior_subset hy]
+ cases' eq_or_ne y x with h h; · use 1; simp [h.symm, interior_subset hy]
have hxy : 0 < ‖y -ᵥ x‖ := by rwa [norm_pos_iff, vsub_ne_zero]
obtain ⟨u, hu₁, hu₂, hu₃⟩ := mem_interior.mp hy
obtain ⟨ε, hε, hyε⟩ := metric.is_open_iff.mp hu₂ y hu₃
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -57,10 +57,7 @@ theorem AffineSubspace.isClosed_direction_iff (s : AffineSubspace 𝕜 Q) :
include V
/- warning: dist_center_homothety -> dist_center_homothety is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align dist_center_homothety dist_center_homothetyₓ'. -/
@[simp]
theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
@@ -69,10 +66,7 @@ theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
#align dist_center_homothety dist_center_homothety
/- warning: dist_homothety_center -> dist_homothety_center is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) p₂) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) p₂) _inst_2) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align dist_homothety_center dist_homothety_centerₓ'. -/
@[simp]
theorem dist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
@@ -80,10 +74,7 @@ theorem dist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
#align dist_homothety_center dist_homothety_center
/- warning: dist_line_map_line_map -> dist_lineMap_lineMap is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c₁ : 𝕜) (c₂ : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₁) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Dist.dist.{u3} 𝕜 (PseudoMetricSpace.toHasDist.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) c₁ c₂) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c₁ : 𝕜) (c₂ : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c₁) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c₁) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₁) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Dist.dist.{u2} 𝕜 (PseudoMetricSpace.toDist.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) c₁ c₂) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align dist_line_map_line_map dist_lineMap_lineMapₓ'. -/
@[simp]
theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
@@ -102,10 +93,7 @@ theorem lipschitzWith_lineMap (p₁ p₂ : P) : LipschitzWith (nndist p₁ p₂)
-/
/- warning: dist_line_map_left -> dist_lineMap_left is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align dist_line_map_left dist_lineMap_leftₓ'. -/
@[simp]
theorem dist_lineMap_left (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₁ = ‖c‖ * dist p₁ p₂ := by
@@ -113,10 +101,7 @@ theorem dist_lineMap_left (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c
#align dist_line_map_left dist_lineMap_left
/- warning: dist_left_line_map -> dist_left_lineMap is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align dist_left_line_map dist_left_lineMapₓ'. -/
@[simp]
theorem dist_left_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₁ (lineMap p₁ p₂ c) = ‖c‖ * dist p₁ p₂ :=
@@ -124,10 +109,7 @@ theorem dist_left_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₁ (lineMap p₁ p
#align dist_left_line_map dist_left_lineMap
/- warning: dist_line_map_right -> dist_lineMap_right is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align dist_line_map_right dist_lineMap_rightₓ'. -/
@[simp]
theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖ * dist p₁ p₂ :=
@@ -135,10 +117,7 @@ theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂
#align dist_line_map_right dist_lineMap_right
/- warning: dist_right_line_map -> dist_right_lineMap is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align dist_right_line_map dist_right_lineMapₓ'. -/
@[simp]
theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁ p₂ c) = ‖1 - c‖ * dist p₁ p₂ :=
@@ -146,10 +125,7 @@ theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁
#align dist_right_line_map dist_right_lineMap
/- warning: dist_homothety_self -> dist_homothety_self is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) p₂) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) p₂) _inst_2) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (Semiring.toOne.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align dist_homothety_self dist_homothety_selfₓ'. -/
@[simp]
theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
@@ -158,10 +134,7 @@ theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
#align dist_homothety_self dist_homothety_self
/- warning: dist_self_homothety -> dist_self_homothety is a dubious translation:
-lean 3 declaration is
- forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
-but is expected to have type
- forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (Semiring.toOne.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align dist_self_homothety dist_self_homothetyₓ'. -/
@[simp]
theorem dist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
@@ -253,10 +226,7 @@ theorem antilipschitzWith_lineMap {p₁ p₂ : Q} (h : p₁ ≠ p₂) :
variable (𝕜)
/- warning: eventually_homothety_mem_of_mem_interior -> eventually_homothety_mem_of_mem_interior is a dubious translation:
-lean 3 declaration is
- forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] (𝕜 : Type.{u3}) [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u2} Q} {y : Q}, (Membership.Mem.{u2, u2} Q (Set.{u2} Q) (Set.hasMem.{u2} Q) y (interior.{u2} Q (UniformSpace.toTopologicalSpace.{u2} Q (PseudoMetricSpace.toUniformSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5))) s)) -> (Filter.Eventually.{u3} 𝕜 (fun (δ : 𝕜) => Membership.Mem.{u2, u2} Q (Set.{u2} Q) (Set.hasMem.{u2} Q) (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) => Q -> Q) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (AffineMap.homothety.{u3, u1, u2} 𝕜 W Q (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ) y) s) (nhds.{u3} 𝕜 (UniformSpace.toTopologicalSpace.{u3} 𝕜 (PseudoMetricSpace.toUniformSpace.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))
-but is expected to have type
- forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {y : Q}, (Membership.mem.{u3, u3} Q (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) y (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => Membership.mem.{u3, u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : Q) => Q) y) (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ) y) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))))))))
+<too large>
Case conversion may be inaccurate. Consider using '#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interiorₓ'. -/
theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy : y ∈ interior s) :
∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ y ∈ s :=
@@ -274,10 +244,7 @@ theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy
#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interior
/- warning: eventually_homothety_image_subset_of_finite_subset_interior -> eventually_homothety_image_subset_of_finite_subset_interior is a dubious translation:
-lean 3 declaration is
- forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] (𝕜 : Type.{u3}) [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u2} Q} {t : Set.{u2} Q}, (Set.Finite.{u2} Q t) -> (HasSubset.Subset.{u2} (Set.{u2} Q) (Set.hasSubset.{u2} Q) t (interior.{u2} Q (UniformSpace.toTopologicalSpace.{u2} Q (PseudoMetricSpace.toUniformSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5))) s)) -> (Filter.Eventually.{u3} 𝕜 (fun (δ : 𝕜) => HasSubset.Subset.{u2} (Set.{u2} Q) (Set.hasSubset.{u2} Q) (Set.image.{u2, u2} Q Q (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) => Q -> Q) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (AffineMap.homothety.{u3, u1, u2} 𝕜 W Q (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ)) t) s) (nhds.{u3} 𝕜 (UniformSpace.toTopologicalSpace.{u3} 𝕜 (PseudoMetricSpace.toUniformSpace.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))
-but is expected to have type
- forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {t : Set.{u3} Q}, (Set.Finite.{u3} Q t) -> (HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) t (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) (Set.image.{u3, u3} Q Q (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ)) t) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))))))))
+<too large>
Case conversion may be inaccurate. Consider using '#align eventually_homothety_image_subset_of_finite_subset_interior eventually_homothety_image_subset_of_finite_subset_interiorₓ'. -/
theorem eventually_homothety_image_subset_of_finite_subset_interior (x : Q) {s : Set Q} {t : Set Q}
(ht : t.Finite) (h : t ⊆ interior s) : ∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ '' t ⊆ s :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/0b9eaaa7686280fad8cce467f5c3c57ee6ce77f8
@@ -60,7 +60,7 @@ include V
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_center_homothety dist_center_homothetyₓ'. -/
@[simp]
theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
@@ -72,7 +72,7 @@ theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) _inst_2) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) p₂) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) p₂) _inst_2) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_homothety_center dist_homothety_centerₓ'. -/
@[simp]
theorem dist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
@@ -83,7 +83,7 @@ theorem dist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c₁ : 𝕜) (c₂ : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₁) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Dist.dist.{u3} 𝕜 (PseudoMetricSpace.toHasDist.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) c₁ c₂) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c₁ : 𝕜) (c₂ : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c₁) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c₁) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₁) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Dist.dist.{u2} 𝕜 (PseudoMetricSpace.toDist.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) c₁ c₂) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c₁ : 𝕜) (c₂ : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c₁) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c₁) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₁) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Dist.dist.{u2} 𝕜 (PseudoMetricSpace.toDist.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) c₁ c₂) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_line_map_line_map dist_lineMap_lineMapₓ'. -/
@[simp]
theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
@@ -105,7 +105,7 @@ theorem lipschitzWith_lineMap (p₁ p₂ : P) : LipschitzWith (nndist p₁ p₂)
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_line_map_left dist_lineMap_leftₓ'. -/
@[simp]
theorem dist_lineMap_left (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₁ = ‖c‖ * dist p₁ p₂ := by
@@ -116,7 +116,7 @@ theorem dist_lineMap_left (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_left_line_map dist_left_lineMapₓ'. -/
@[simp]
theorem dist_left_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₁ (lineMap p₁ p₂ c) = ‖c‖ * dist p₁ p₂ :=
@@ -127,7 +127,7 @@ theorem dist_left_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₁ (lineMap p₁ p
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) c) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_line_map_right dist_lineMap_rightₓ'. -/
@[simp]
theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖ * dist p₁ p₂ :=
@@ -138,7 +138,7 @@ theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_right_line_map dist_right_lineMapₓ'. -/
@[simp]
theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁ p₂ c) = ‖1 - c‖ * dist p₁ p₂ :=
@@ -149,7 +149,7 @@ theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) _inst_2) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (Semiring.toOne.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) p₂) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) p₂) _inst_2) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (Semiring.toOne.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_homothety_self dist_homothety_selfₓ'. -/
@[simp]
theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
@@ -161,7 +161,7 @@ theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (Semiring.toOne.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (Semiring.toOne.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_self_homothety dist_self_homothetyₓ'. -/
@[simp]
theorem dist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
@@ -241,7 +241,7 @@ include W
lean 3 declaration is
forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] {p₁ : Q} {p₂ : Q}, (Ne.{succ u2} Q p₁ p₂) -> (AntilipschitzWith.{u3, u2} 𝕜 Q (PseudoMetricSpace.toPseudoEMetricSpace.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (PseudoMetricSpace.toPseudoEMetricSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)) (Inv.inv.{0} NNReal (DivInvMonoid.toHasInv.{0} NNReal (GroupWithZero.toDivInvMonoid.{0} NNReal (DivisionSemiring.toGroupWithZero.{0} NNReal (Semifield.toDivisionSemiring.{0} NNReal (LinearOrderedSemifield.toSemifield.{0} NNReal (CanonicallyLinearOrderedSemifield.toLinearOrderedSemifield.{0} NNReal NNReal.canonicallyLinearOrderedSemifield)))))) (NNDist.nndist.{u2} Q (PseudoMetricSpace.toNNDist.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)) p₁ p₂)) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) => 𝕜 -> Q) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) p₁ p₂)))
but is expected to have type
- forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] {p₁ : Q} {p₂ : Q}, (Ne.{succ u3} Q p₁ p₂) -> (AntilipschitzWith.{u2, u3} 𝕜 Q (EMetricSpace.toPseudoEMetricSpace.{u2} 𝕜 (MetricSpace.toEMetricSpace.{u2} 𝕜 (NormedField.toMetricSpace.{u2} 𝕜 _inst_7))) (EMetricSpace.toPseudoEMetricSpace.{u3} Q (MetricSpace.toEMetricSpace.{u3} Q _inst_5)) (Inv.inv.{0} NNReal (CanonicallyLinearOrderedSemifield.toInv.{0} NNReal NNReal.instCanonicallyLinearOrderedSemifieldNNReal) (NNDist.nndist.{u3} Q (PseudoMetricSpace.toNNDist.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)) p₁ p₂)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => Q) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) p₁ p₂)))
+ forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] {p₁ : Q} {p₂ : Q}, (Ne.{succ u3} Q p₁ p₂) -> (AntilipschitzWith.{u2, u3} 𝕜 Q (EMetricSpace.toPseudoEMetricSpace.{u2} 𝕜 (MetricSpace.toEMetricSpace.{u2} 𝕜 (NormedField.toMetricSpace.{u2} 𝕜 _inst_7))) (EMetricSpace.toPseudoEMetricSpace.{u3} Q (MetricSpace.toEMetricSpace.{u3} Q _inst_5)) (Inv.inv.{0} NNReal (CanonicallyLinearOrderedSemifield.toInv.{0} NNReal NNReal.instCanonicallyLinearOrderedSemifieldNNReal) (NNDist.nndist.{u3} Q (PseudoMetricSpace.toNNDist.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)) p₁ p₂)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : 𝕜) => Q) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (Semiring.toModule.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) p₁ p₂)))
Case conversion may be inaccurate. Consider using '#align antilipschitz_with_line_map antilipschitzWith_lineMapₓ'. -/
theorem antilipschitzWith_lineMap {p₁ p₂ : Q} (h : p₁ ≠ p₂) :
AntilipschitzWith (nndist p₁ p₂)⁻¹ (lineMap p₁ p₂ : 𝕜 → Q) :=
@@ -256,7 +256,7 @@ variable (𝕜)
lean 3 declaration is
forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] (𝕜 : Type.{u3}) [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u2} Q} {y : Q}, (Membership.Mem.{u2, u2} Q (Set.{u2} Q) (Set.hasMem.{u2} Q) y (interior.{u2} Q (UniformSpace.toTopologicalSpace.{u2} Q (PseudoMetricSpace.toUniformSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5))) s)) -> (Filter.Eventually.{u3} 𝕜 (fun (δ : 𝕜) => Membership.Mem.{u2, u2} Q (Set.{u2} Q) (Set.hasMem.{u2} Q) (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) => Q -> Q) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (AffineMap.homothety.{u3, u1, u2} 𝕜 W Q (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ) y) s) (nhds.{u3} 𝕜 (UniformSpace.toTopologicalSpace.{u3} 𝕜 (PseudoMetricSpace.toUniformSpace.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))
but is expected to have type
- forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {y : Q}, (Membership.mem.{u3, u3} Q (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) y (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => Membership.mem.{u3, u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) y) (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ) y) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))))))))
+ forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {y : Q}, (Membership.mem.{u3, u3} Q (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) y (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => Membership.mem.{u3, u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : Q) => Q) y) (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ) y) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))))))))
Case conversion may be inaccurate. Consider using '#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interiorₓ'. -/
theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy : y ∈ interior s) :
∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ y ∈ s :=
@@ -277,7 +277,7 @@ theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy
lean 3 declaration is
forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] (𝕜 : Type.{u3}) [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u2} Q} {t : Set.{u2} Q}, (Set.Finite.{u2} Q t) -> (HasSubset.Subset.{u2} (Set.{u2} Q) (Set.hasSubset.{u2} Q) t (interior.{u2} Q (UniformSpace.toTopologicalSpace.{u2} Q (PseudoMetricSpace.toUniformSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5))) s)) -> (Filter.Eventually.{u3} 𝕜 (fun (δ : 𝕜) => HasSubset.Subset.{u2} (Set.{u2} Q) (Set.hasSubset.{u2} Q) (Set.image.{u2, u2} Q Q (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) => Q -> Q) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (AffineMap.homothety.{u3, u1, u2} 𝕜 W Q (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ)) t) s) (nhds.{u3} 𝕜 (UniformSpace.toTopologicalSpace.{u3} 𝕜 (PseudoMetricSpace.toUniformSpace.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))
but is expected to have type
- forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {t : Set.{u3} Q}, (Set.Finite.{u3} Q t) -> (HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) t (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) (Set.image.{u3, u3} Q Q (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ)) t) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))))))))
+ forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {t : Set.{u3} Q}, (Set.Finite.{u3} Q t) -> (HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) t (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) (Set.image.{u3, u3} Q Q (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1003 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ)) t) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))))))))
Case conversion may be inaccurate. Consider using '#align eventually_homothety_image_subset_of_finite_subset_interior eventually_homothety_image_subset_of_finite_subset_interiorₓ'. -/
theorem eventually_homothety_image_subset_of_finite_subset_interior (x : Q) {s : Set Q} {t : Set Q}
(ht : t.Finite) (h : t ⊆ interior s) : ∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ '' t ⊆ s :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/08e1d8d4d989df3a6df86f385e9053ec8a372cc1
@@ -127,7 +127,7 @@ theorem dist_left_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₁ (lineMap p₁ p
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_line_map_right dist_lineMap_rightₓ'. -/
@[simp]
theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖ * dist p₁ p₂ :=
@@ -138,7 +138,7 @@ theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_right_line_map dist_right_lineMapₓ'. -/
@[simp]
theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁ p₂ c) = ‖1 - c‖ * dist p₁ p₂ :=
@@ -149,7 +149,7 @@ theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) _inst_2) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (NonAssocRing.toOne.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) _inst_2) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (Semiring.toOne.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_homothety_self dist_homothety_selfₓ'. -/
@[simp]
theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
@@ -161,7 +161,7 @@ theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (NonAssocRing.toOne.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (Semiring.toOne.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_self_homothety dist_self_homothetyₓ'. -/
@[simp]
theorem dist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
@@ -176,7 +176,7 @@ variable [Invertible (2 : 𝕜)]
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_left_midpoint dist_left_midpointₓ'. -/
@[simp]
theorem dist_left_midpoint (p₁ p₂ : P) : dist p₁ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
@@ -187,7 +187,7 @@ theorem dist_left_midpoint (p₁ p₂ : P) : dist p₁ (midpoint 𝕜 p₁ p₂)
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_midpoint_left dist_midpoint_leftₓ'. -/
@[simp]
theorem dist_midpoint_left (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₁ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
@@ -198,7 +198,7 @@ theorem dist_midpoint_left (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₁
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_midpoint_right dist_midpoint_rightₓ'. -/
@[simp]
theorem dist_midpoint_right (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₂ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ :=
@@ -209,7 +209,7 @@ theorem dist_midpoint_right (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
Case conversion may be inaccurate. Consider using '#align dist_right_midpoint dist_right_midpointₓ'. -/
@[simp]
theorem dist_right_midpoint (p₁ p₂ : P) : dist p₂ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ :=
@@ -220,7 +220,7 @@ theorem dist_right_midpoint (p₁ p₂ : P) : dist p₂ (midpoint 𝕜 p₁ p₂
lean 3 declaration is
forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P) (p₃ : P) (p₄ : P), LE.le.{0} Real Real.hasLe (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₃ p₄)) (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (DivInvMonoid.toHasDiv.{0} Real (DivisionRing.toDivInvMonoid.{0} Real Real.divisionRing))) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₃) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ p₄)) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))))
but is expected to have type
- forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P) (p₃ : P) (p₄ : P), LE.le.{0} Real Real.instLEReal (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₃ p₄)) (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (LinearOrderedField.toDiv.{0} Real Real.instLinearOrderedFieldReal)) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₃) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ p₄)) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))))
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P) (p₃ : P) (p₄ : P), LE.le.{0} Real Real.instLEReal (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₃ p₄)) (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (LinearOrderedField.toDiv.{0} Real Real.instLinearOrderedFieldReal)) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₃) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ p₄)) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (Semiring.toNatCast.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))))
Case conversion may be inaccurate. Consider using '#align dist_midpoint_midpoint_le' dist_midpoint_midpoint_le'ₓ'. -/
theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
dist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / ‖(2 : 𝕜)‖ :=
@@ -256,7 +256,7 @@ variable (𝕜)
lean 3 declaration is
forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] (𝕜 : Type.{u3}) [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u2} Q} {y : Q}, (Membership.Mem.{u2, u2} Q (Set.{u2} Q) (Set.hasMem.{u2} Q) y (interior.{u2} Q (UniformSpace.toTopologicalSpace.{u2} Q (PseudoMetricSpace.toUniformSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5))) s)) -> (Filter.Eventually.{u3} 𝕜 (fun (δ : 𝕜) => Membership.Mem.{u2, u2} Q (Set.{u2} Q) (Set.hasMem.{u2} Q) (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) => Q -> Q) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (AffineMap.homothety.{u3, u1, u2} 𝕜 W Q (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ) y) s) (nhds.{u3} 𝕜 (UniformSpace.toTopologicalSpace.{u3} 𝕜 (PseudoMetricSpace.toUniformSpace.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))
but is expected to have type
- forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {y : Q}, (Membership.mem.{u3, u3} Q (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) y (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => Membership.mem.{u3, u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) y) (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ) y) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))))))
+ forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {y : Q}, (Membership.mem.{u3, u3} Q (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) y (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => Membership.mem.{u3, u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) y) (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ) y) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))))))))
Case conversion may be inaccurate. Consider using '#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interiorₓ'. -/
theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy : y ∈ interior s) :
∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ y ∈ s :=
@@ -277,7 +277,7 @@ theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy
lean 3 declaration is
forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] (𝕜 : Type.{u3}) [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u2} Q} {t : Set.{u2} Q}, (Set.Finite.{u2} Q t) -> (HasSubset.Subset.{u2} (Set.{u2} Q) (Set.hasSubset.{u2} Q) t (interior.{u2} Q (UniformSpace.toTopologicalSpace.{u2} Q (PseudoMetricSpace.toUniformSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5))) s)) -> (Filter.Eventually.{u3} 𝕜 (fun (δ : 𝕜) => HasSubset.Subset.{u2} (Set.{u2} Q) (Set.hasSubset.{u2} Q) (Set.image.{u2, u2} Q Q (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) => Q -> Q) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (AffineMap.homothety.{u3, u1, u2} 𝕜 W Q (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ)) t) s) (nhds.{u3} 𝕜 (UniformSpace.toTopologicalSpace.{u3} 𝕜 (PseudoMetricSpace.toUniformSpace.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))
but is expected to have type
- forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {t : Set.{u3} Q}, (Set.Finite.{u3} Q t) -> (HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) t (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) (Set.image.{u3, u3} Q Q (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ)) t) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))))))
+ forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {t : Set.{u3} Q}, (Set.Finite.{u3} Q t) -> (HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) t (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) (Set.image.{u3, u3} Q Q (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ)) t) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (Semiring.toOne.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))))))))
Case conversion may be inaccurate. Consider using '#align eventually_homothety_image_subset_of_finite_subset_interior eventually_homothety_image_subset_of_finite_subset_interiorₓ'. -/
theorem eventually_homothety_image_subset_of_finite_subset_interior (x : Q) {s : Set Q} {t : Set Q}
(ht : t.Finite) (h : t ⊆ interior s) : ∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ '' t ⊆ s :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/cd8fafa2fac98e1a67097e8a91ad9901cfde48af
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Joseph Myers, Yury Kudryashov
! This file was ported from Lean 3 source module analysis.normed_space.add_torsor
-! leanprover-community/mathlib commit 78261225eb5cedc61c5c74ecb44e5b385d13b733
+! leanprover-community/mathlib commit ce38d86c0b2d427ce208c3cee3159cb421d2b3c4
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -17,6 +17,9 @@ import Mathbin.Topology.Instances.RealVectorSpace
/-!
# Torsors of normed space actions.
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
This file contains lemmas about normed additive torsors over normed spaces.
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/17ad94b4953419f3e3ce3e77da3239c62d1d09f0
@@ -36,6 +36,12 @@ variable {𝕜 : Type _} [NormedField 𝕜] [NormedSpace 𝕜 V] [NormedSpace
open AffineMap
+/- warning: affine_subspace.is_closed_direction_iff -> AffineSubspace.isClosed_direction_iff is a dubious translation:
+lean 3 declaration is
+ forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (s : AffineSubspace.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)), Iff (IsClosed.{u1} W (UniformSpace.toTopologicalSpace.{u1} W (PseudoMetricSpace.toUniformSpace.{u1} W (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} W (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Submodule.{u3, u1} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u1} W (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4)) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9)) (Set.{u1} W) (HasLiftT.mk.{succ u1, succ u1} (Submodule.{u3, u1} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u1} W (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4)) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9)) (Set.{u1} W) (CoeTCₓ.coe.{succ u1, succ u1} (Submodule.{u3, u1} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u1} W (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4)) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9)) (Set.{u1} W) (SetLike.Set.hasCoeT.{u1, u1} (Submodule.{u3, u1} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u1} W (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4)) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9)) W (Submodule.setLike.{u3, u1} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u1} W (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4)) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9))))) (AffineSubspace.direction.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) s))) (IsClosed.{u2} Q (UniformSpace.toTopologicalSpace.{u2} Q (PseudoMetricSpace.toUniformSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5))) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (AffineSubspace.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (Set.{u2} Q) (HasLiftT.mk.{succ u2, succ u2} (AffineSubspace.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (Set.{u2} Q) (CoeTCₓ.coe.{succ u2, succ u2} (AffineSubspace.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (Set.{u2} Q) (SetLike.Set.hasCoeT.{u2, u2} (AffineSubspace.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) Q (AffineSubspace.setLike.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6))))) s))
+but is expected to have type
+ forall {W : Type.{u2}} {Q : Type.{u1}} [_inst_4 : NormedAddCommGroup.{u2} W] [_inst_5 : MetricSpace.{u1} Q] [_inst_6 : NormedAddTorsor.{u2, u1} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5)] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4)] (s : AffineSubspace.{u3, u2, u1} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u2, u1} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5) _inst_6)), Iff (IsClosed.{u2} W (UniformSpace.toTopologicalSpace.{u2} W (PseudoMetricSpace.toUniformSpace.{u2} W (SeminormedAddCommGroup.toPseudoMetricSpace.{u2} W (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4)))) (SetLike.coe.{u2, u2} (Submodule.{u3, u2} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u2} W (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4)) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9)) W (Submodule.setLike.{u3, u2} 𝕜 W (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (AddCommGroup.toAddCommMonoid.{u2} W (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4)) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9)) (AffineSubspace.direction.{u3, u2, u1} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u2, u1} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5) _inst_6) s))) (IsClosed.{u1} Q (UniformSpace.toTopologicalSpace.{u1} Q (PseudoMetricSpace.toUniformSpace.{u1} Q (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5))) (SetLike.coe.{u1, u1} (AffineSubspace.{u3, u2, u1} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u2, u1} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5) _inst_6)) Q (AffineSubspace.instSetLikeAffineSubspace.{u3, u2, u1} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u2} W _inst_4) (NormedSpace.toModule.{u3, u2} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u2, u1} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u2} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u1} Q _inst_5) _inst_6)) s))
+Case conversion may be inaccurate. Consider using '#align affine_subspace.is_closed_direction_iff AffineSubspace.isClosed_direction_iffₓ'. -/
theorem AffineSubspace.isClosed_direction_iff (s : AffineSubspace 𝕜 Q) :
IsClosed (s.direction : Set W) ↔ IsClosed (s : Set Q) :=
by
@@ -47,17 +53,35 @@ theorem AffineSubspace.isClosed_direction_iff (s : AffineSubspace 𝕜 Q) :
include V
+/- warning: dist_center_homothety -> dist_center_homothety is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_center_homothety dist_center_homothetyₓ'. -/
@[simp]
theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₁ (homothety p₁ c p₂) = ‖c‖ * dist p₁ p₂ := by
simp [homothety_def, norm_smul, ← dist_eq_norm_vsub, dist_comm]
#align dist_center_homothety dist_center_homothety
+/- warning: dist_homothety_center -> dist_homothety_center is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) _inst_2) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_homothety_center dist_homothety_centerₓ'. -/
@[simp]
theorem dist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₁ = ‖c‖ * dist p₁ p₂ := by rw [dist_comm, dist_center_homothety]
#align dist_homothety_center dist_homothety_center
+/- warning: dist_line_map_line_map -> dist_lineMap_lineMap is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c₁ : 𝕜) (c₂ : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₁) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Dist.dist.{u3} 𝕜 (PseudoMetricSpace.toHasDist.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) c₁ c₂) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c₁ : 𝕜) (c₂ : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c₁) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c₁) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₁) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Dist.dist.{u2} 𝕜 (PseudoMetricSpace.toDist.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) c₁ c₂) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_line_map_line_map dist_lineMap_lineMapₓ'. -/
@[simp]
theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
dist (lineMap p₁ p₂ c₁) (lineMap p₁ p₂ c₂) = dist c₁ c₂ * dist p₁ p₂ :=
@@ -67,37 +91,75 @@ theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
vsub_eq_sub]
#align dist_line_map_line_map dist_lineMap_lineMap
+#print lipschitzWith_lineMap /-
theorem lipschitzWith_lineMap (p₁ p₂ : P) : LipschitzWith (nndist p₁ p₂) (lineMap p₁ p₂ : 𝕜 → P) :=
LipschitzWith.of_dist_le_mul fun c₁ c₂ =>
((dist_lineMap_lineMap p₁ p₂ c₁ c₂).trans (mul_comm _ _)).le
#align lipschitz_with_line_map lipschitzWith_lineMap
+-/
+/- warning: dist_line_map_left -> dist_lineMap_left is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_line_map_left dist_lineMap_leftₓ'. -/
@[simp]
theorem dist_lineMap_left (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₁ = ‖c‖ * dist p₁ p₂ := by
simpa only [line_map_apply_zero, dist_zero_right] using dist_lineMap_lineMap p₁ p₂ c 0
#align dist_line_map_left dist_lineMap_left
+/- warning: dist_left_line_map -> dist_left_lineMap is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) c) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) c) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_left_line_map dist_left_lineMapₓ'. -/
@[simp]
theorem dist_left_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₁ (lineMap p₁ p₂ c) = ‖c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_lineMap_left _ _ _)
#align dist_left_line_map dist_left_lineMap
+/- warning: dist_line_map_right -> dist_lineMap_right is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) c) _inst_2) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_line_map_right dist_lineMap_rightₓ'. -/
@[simp]
theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖ * dist p₁ p₂ :=
by simpa only [line_map_apply_one, dist_eq_norm'] using dist_lineMap_lineMap p₁ p₂ c 1
#align dist_line_map_right dist_lineMap_right
+/- warning: dist_right_line_map -> dist_right_lineMap is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => 𝕜 -> P) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => P) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) c)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (HSub.hSub.{u2, u2, u2} 𝕜 𝕜 𝕜 (instHSub.{u2} 𝕜 (Ring.toSub.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_right_line_map dist_right_lineMapₓ'. -/
@[simp]
theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁ p₂ c) = ‖1 - c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_lineMap_right _ _ _)
#align dist_right_line_map dist_right_lineMap
+/- warning: dist_homothety_self -> dist_homothety_self is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) (PseudoMetricSpace.toDist.{u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) p₂) _inst_2) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (NonAssocRing.toOne.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_homothety_self dist_homothety_selfₓ'. -/
@[simp]
theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₂ = ‖1 - c‖ * dist p₁ p₂ := by
rw [homothety_eq_line_map, dist_lineMap_right]
#align dist_homothety_self dist_homothety_self
+/- warning: dist_self_homothety -> dist_self_homothety is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) => P -> P) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 V P V P (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u3, u1, u2} 𝕜 V P (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (HSub.hSub.{u3, u3, u3} 𝕜 𝕜 𝕜 (instHSub.{u3} 𝕜 (SubNegMonoid.toHasSub.{u3} 𝕜 (AddGroup.toSubNegMonoid.{u3} 𝕜 (NormedAddGroup.toAddGroup.{u3} 𝕜 (NormedAddCommGroup.toNormedAddGroup.{u3} 𝕜 (NonUnitalNormedRing.toNormedAddCommGroup.{u3} 𝕜 (NormedRing.toNonUnitalNormedRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))) c)) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u2}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u2} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u2, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u1}} [_inst_7 : NormedField.{u1} 𝕜] [_inst_8 : NormedSpace.{u1, u2} 𝕜 V _inst_7 _inst_1] (p₁ : P) (p₂ : P) (c : 𝕜), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u3} (AffineMap.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) P (fun (_x : P) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : P) => P) _x) (AffineMap.funLike.{u1, u2, u3, u2, u3} 𝕜 V P V P (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7)))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3)) (AffineMap.homothety.{u1, u2, u3} 𝕜 V P (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 (NormedField.toField.{u1} 𝕜 _inst_7))) (SeminormedAddCommGroup.toAddCommGroup.{u2} V _inst_1) (NormedAddTorsor.toAddTorsor.{u2, u3} V P _inst_1 _inst_2 _inst_3) (NormedSpace.toModule.{u1, u2} 𝕜 V _inst_7 _inst_1 _inst_8) p₁ c) p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Norm.norm.{u1} 𝕜 (NormedField.toNorm.{u1} 𝕜 _inst_7) (HSub.hSub.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHSub.{u1} 𝕜 (Ring.toSub.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))) (OfNat.ofNat.{u1} 𝕜 1 (One.toOfNat1.{u1} 𝕜 (NonAssocRing.toOne.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (NormedRing.toRing.{u1} 𝕜 (NormedCommRing.toNormedRing.{u1} 𝕜 (NormedField.toNormedCommRing.{u1} 𝕜 _inst_7))))))) c)) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_self_homothety dist_self_homothetyₓ'. -/
@[simp]
theorem dist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₂ (homothety p₁ c p₂) = ‖1 - c‖ * dist p₁ p₂ := by rw [dist_comm, dist_homothety_self]
@@ -107,26 +169,56 @@ section invertibleTwo
variable [Invertible (2 : 𝕜)]
+/- warning: dist_left_midpoint -> dist_left_midpoint is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_left_midpoint dist_left_midpointₓ'. -/
@[simp]
theorem dist_left_midpoint (p₁ p₂ : P) : dist p₁ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
rw [midpoint, dist_comm, dist_lineMap_left, invOf_eq_inv, ← norm_inv]
#align dist_left_midpoint dist_left_midpoint
+/- warning: dist_midpoint_left -> dist_midpoint_left is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₁) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_midpoint_left dist_midpoint_leftₓ'. -/
@[simp]
theorem dist_midpoint_left (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₁ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
rw [dist_comm, dist_left_midpoint]
#align dist_midpoint_left dist_midpoint_left
+/- warning: dist_midpoint_right -> dist_midpoint_right is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) p₂) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_midpoint_right dist_midpoint_rightₓ'. -/
@[simp]
theorem dist_midpoint_right (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₂ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [midpoint_comm, dist_midpoint_left, dist_comm]
#align dist_midpoint_right dist_midpoint_right
+/- warning: dist_right_midpoint -> dist_right_midpoint is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) (Inv.inv.{0} Real Real.hasInv (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₂))
+but is expected to have type
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P), Eq.{1} Real (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂)) (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) (Inv.inv.{0} Real Real.instInvReal (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₂))
+Case conversion may be inaccurate. Consider using '#align dist_right_midpoint dist_right_midpointₓ'. -/
@[simp]
theorem dist_right_midpoint (p₁ p₂ : P) : dist p₂ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ :=
by rw [dist_comm, dist_midpoint_right]
#align dist_right_midpoint dist_right_midpoint
+/- warning: dist_midpoint_midpoint_le' -> dist_midpoint_midpoint_le' is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} {P : Type.{u2}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u2} P] [_inst_3 : NormedAddTorsor.{u1, u2} V P _inst_1 _inst_2] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_8 : NormedSpace.{u3, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u3} 𝕜 (Distrib.toHasMul.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))] (p₁ : P) (p₂ : P) (p₃ : P) (p₄ : P), LE.le.{0} Real Real.hasLe (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₁ p₂) (midpoint.{u3, u1, u2} 𝕜 V P (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u3, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u2} V P _inst_1 _inst_2 _inst_3) p₃ p₄)) (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (DivInvMonoid.toHasDiv.{0} Real (DivisionRing.toDivInvMonoid.{0} Real Real.divisionRing))) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₁ p₃) (Dist.dist.{u2} P (PseudoMetricSpace.toHasDist.{u2} P _inst_2) p₂ p₄)) (Norm.norm.{u3} 𝕜 (NormedField.toHasNorm.{u3} 𝕜 _inst_7) (OfNat.ofNat.{u3} 𝕜 2 (OfNat.mk.{u3} 𝕜 2 (bit0.{u3} 𝕜 (Distrib.toHasAdd.{u3} 𝕜 (Ring.toDistrib.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))))))))))
+but is expected to have type
+ forall {V : Type.{u1}} {P : Type.{u3}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_2 : PseudoMetricSpace.{u3} P] [_inst_3 : NormedAddTorsor.{u1, u3} V P _inst_1 _inst_2] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_8 : NormedSpace.{u2, u1} 𝕜 V _inst_7 _inst_1] [_inst_10 : Invertible.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))] (p₁ : P) (p₂ : P) (p₃ : P) (p₄ : P), LE.le.{0} Real Real.instLEReal (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₁ p₂) (midpoint.{u2, u1, u3} 𝕜 V P (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) _inst_10 (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{u2, u1} 𝕜 V _inst_7 _inst_1 _inst_8) (NormedAddTorsor.toAddTorsor.{u1, u3} V P _inst_1 _inst_2 _inst_3) p₃ p₄)) (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (LinearOrderedField.toDiv.{0} Real Real.instLinearOrderedFieldReal)) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₁ p₃) (Dist.dist.{u3} P (PseudoMetricSpace.toDist.{u3} P _inst_2) p₂ p₄)) (Norm.norm.{u2} 𝕜 (NormedField.toNorm.{u2} 𝕜 _inst_7) (OfNat.ofNat.{u2} 𝕜 2 (instOfNat.{u2} 𝕜 2 (NonAssocRing.toNatCast.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))))) (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))))
+Case conversion may be inaccurate. Consider using '#align dist_midpoint_midpoint_le' dist_midpoint_midpoint_le'ₓ'. -/
theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
dist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / ‖(2 : 𝕜)‖ :=
by
@@ -142,6 +234,12 @@ omit V
include W
+/- warning: antilipschitz_with_line_map -> antilipschitzWith_lineMap is a dubious translation:
+lean 3 declaration is
+ forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] {𝕜 : Type.{u3}} [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] {p₁ : Q} {p₂ : Q}, (Ne.{succ u2} Q p₁ p₂) -> (AntilipschitzWith.{u3, u2} 𝕜 Q (PseudoMetricSpace.toPseudoEMetricSpace.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (PseudoMetricSpace.toPseudoEMetricSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)) (Inv.inv.{0} NNReal (DivInvMonoid.toHasInv.{0} NNReal (GroupWithZero.toDivInvMonoid.{0} NNReal (DivisionSemiring.toGroupWithZero.{0} NNReal (Semifield.toDivisionSemiring.{0} NNReal (LinearOrderedSemifield.toSemifield.{0} NNReal (CanonicallyLinearOrderedSemifield.toLinearOrderedSemifield.{0} NNReal NNReal.canonicallyLinearOrderedSemifield)))))) (NNDist.nndist.{u2} Q (PseudoMetricSpace.toNNDist.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)) p₁ p₂)) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (fun (_x : AffineMap.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) => 𝕜 -> Q) (AffineMap.hasCoeToFun.{u3, u3, u3, u1, u2} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NonUnitalNonAssocRing.toAddCommGroup.{u3} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u3} 𝕜 (Ring.toNonAssocRing.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (Semiring.toModule.{u3} 𝕜 (Ring.toSemiring.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))) (addGroupIsAddTorsor.{u3} 𝕜 (AddGroupWithOne.toAddGroup.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (AffineMap.lineMap.{u3, u1, u2} 𝕜 W Q (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) p₁ p₂)))
+but is expected to have type
+ forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] {𝕜 : Type.{u2}} [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] {p₁ : Q} {p₂ : Q}, (Ne.{succ u3} Q p₁ p₂) -> (AntilipschitzWith.{u2, u3} 𝕜 Q (EMetricSpace.toPseudoEMetricSpace.{u2} 𝕜 (MetricSpace.toEMetricSpace.{u2} 𝕜 (NormedField.toMetricSpace.{u2} 𝕜 _inst_7))) (EMetricSpace.toPseudoEMetricSpace.{u3} Q (MetricSpace.toEMetricSpace.{u3} Q _inst_5)) (Inv.inv.{0} NNReal (CanonicallyLinearOrderedSemifield.toInv.{0} NNReal NNReal.instCanonicallyLinearOrderedSemifieldNNReal) (NNDist.nndist.{u3} Q (PseudoMetricSpace.toNNDist.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)) p₁ p₂)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (AffineMap.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) 𝕜 (fun (_x : 𝕜) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : 𝕜) => Q) _x) (AffineMap.funLike.{u2, u2, u2, u1, u3} 𝕜 𝕜 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (Ring.toAddCommGroup.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (AffineMap.instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))) (addGroupIsAddTorsor.{u2} 𝕜 (AddGroupWithOne.toAddGroup.{u2} 𝕜 (Ring.toAddGroupWithOne.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.lineMap.{u2, u1, u3} 𝕜 W Q (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) p₁ p₂)))
+Case conversion may be inaccurate. Consider using '#align antilipschitz_with_line_map antilipschitzWith_lineMapₓ'. -/
theorem antilipschitzWith_lineMap {p₁ p₂ : Q} (h : p₁ ≠ p₂) :
AntilipschitzWith (nndist p₁ p₂)⁻¹ (lineMap p₁ p₂ : 𝕜 → Q) :=
AntilipschitzWith.of_le_mul_dist fun c₁ c₂ => by
@@ -151,6 +249,12 @@ theorem antilipschitzWith_lineMap {p₁ p₂ : Q} (h : p₁ ≠ p₂) :
variable (𝕜)
+/- warning: eventually_homothety_mem_of_mem_interior -> eventually_homothety_mem_of_mem_interior is a dubious translation:
+lean 3 declaration is
+ forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] (𝕜 : Type.{u3}) [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u2} Q} {y : Q}, (Membership.Mem.{u2, u2} Q (Set.{u2} Q) (Set.hasMem.{u2} Q) y (interior.{u2} Q (UniformSpace.toTopologicalSpace.{u2} Q (PseudoMetricSpace.toUniformSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5))) s)) -> (Filter.Eventually.{u3} 𝕜 (fun (δ : 𝕜) => Membership.Mem.{u2, u2} Q (Set.{u2} Q) (Set.hasMem.{u2} Q) (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) => Q -> Q) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (AffineMap.homothety.{u3, u1, u2} 𝕜 W Q (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ) y) s) (nhds.{u3} 𝕜 (UniformSpace.toTopologicalSpace.{u3} 𝕜 (PseudoMetricSpace.toUniformSpace.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))
+but is expected to have type
+ forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {y : Q}, (Membership.mem.{u3, u3} Q (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) y (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => Membership.mem.{u3, u3} ((fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) y) (Set.{u3} Q) (Set.instMembershipSet.{u3} Q) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ) y) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))))))
+Case conversion may be inaccurate. Consider using '#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interiorₓ'. -/
theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy : y ∈ interior s) :
∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ y ∈ s :=
by
@@ -166,6 +270,12 @@ theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy
rwa [homothety_apply, Metric.mem_ball, dist_eq_norm_vsub W, vadd_vsub_eq_sub_vsub]
#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interior
+/- warning: eventually_homothety_image_subset_of_finite_subset_interior -> eventually_homothety_image_subset_of_finite_subset_interior is a dubious translation:
+lean 3 declaration is
+ forall {W : Type.{u1}} {Q : Type.{u2}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u2} Q] [_inst_6 : NormedAddTorsor.{u1, u2} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5)] (𝕜 : Type.{u3}) [_inst_7 : NormedField.{u3} 𝕜] [_inst_9 : NormedSpace.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u2} Q} {t : Set.{u2} Q}, (Set.Finite.{u2} Q t) -> (HasSubset.Subset.{u2} (Set.{u2} Q) (Set.hasSubset.{u2} Q) t (interior.{u2} Q (UniformSpace.toTopologicalSpace.{u2} Q (PseudoMetricSpace.toUniformSpace.{u2} Q (MetricSpace.toPseudoMetricSpace.{u2} Q _inst_5))) s)) -> (Filter.Eventually.{u3} 𝕜 (fun (δ : 𝕜) => HasSubset.Subset.{u2} (Set.{u2} Q) (Set.hasSubset.{u2} Q) (Set.image.{u2, u2} Q Q (coeFn.{max (succ u1) (succ u2), succ u2} (AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (fun (_x : AffineMap.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) => Q -> Q) (AffineMap.hasCoeToFun.{u3, u1, u2, u1, u2} 𝕜 W Q W Q (CommRing.toRing.{u3} 𝕜 (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6)) (AffineMap.homothety.{u3, u1, u2} 𝕜 W Q (SeminormedCommRing.toCommRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor'.{u1, u2} W Q _inst_4 _inst_5 _inst_6) (NormedSpace.toModule.{u3, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ)) t) s) (nhds.{u3} 𝕜 (UniformSpace.toTopologicalSpace.{u3} 𝕜 (PseudoMetricSpace.toUniformSpace.{u3} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u3} 𝕜 (SeminormedCommRing.toSemiNormedRing.{u3} 𝕜 (NormedCommRing.toSeminormedCommRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7)))))) (OfNat.ofNat.{u3} 𝕜 1 (OfNat.mk.{u3} 𝕜 1 (One.one.{u3} 𝕜 (AddMonoidWithOne.toOne.{u3} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u3} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u3} 𝕜 (Ring.toAddCommGroupWithOne.{u3} 𝕜 (NormedRing.toRing.{u3} 𝕜 (NormedCommRing.toNormedRing.{u3} 𝕜 (NormedField.toNormedCommRing.{u3} 𝕜 _inst_7))))))))))))
+but is expected to have type
+ forall {W : Type.{u1}} {Q : Type.{u3}} [_inst_4 : NormedAddCommGroup.{u1} W] [_inst_5 : MetricSpace.{u3} Q] [_inst_6 : NormedAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5)] (𝕜 : Type.{u2}) [_inst_7 : NormedField.{u2} 𝕜] [_inst_9 : NormedSpace.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4)] (x : Q) {s : Set.{u3} Q} {t : Set.{u3} Q}, (Set.Finite.{u3} Q t) -> (HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) t (interior.{u3} Q (UniformSpace.toTopologicalSpace.{u3} Q (PseudoMetricSpace.toUniformSpace.{u3} Q (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5))) s)) -> (Filter.Eventually.{u2} 𝕜 (fun (δ : 𝕜) => HasSubset.Subset.{u3} (Set.{u3} Q) (Set.instHasSubsetSet.{u3} Q) (Set.image.{u3, u3} Q Q (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (AffineMap.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) Q (fun (_x : Q) => (fun (a._@.Mathlib.LinearAlgebra.AffineSpace.AffineMap._hyg.1004 : Q) => Q) _x) (AffineMap.funLike.{u2, u1, u3, u1, u3} 𝕜 W Q W Q (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7)))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6)) (AffineMap.homothety.{u2, u1, u3} 𝕜 W Q (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 (NormedField.toField.{u2} 𝕜 _inst_7))) (NormedAddCommGroup.toAddCommGroup.{u1} W _inst_4) (NormedAddTorsor.toAddTorsor.{u1, u3} W Q (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) (MetricSpace.toPseudoMetricSpace.{u3} Q _inst_5) _inst_6) (NormedSpace.toModule.{u2, u1} 𝕜 W _inst_7 (NormedAddCommGroup.toSeminormedAddCommGroup.{u1} W _inst_4) _inst_9) x δ)) t) s) (nhds.{u2} 𝕜 (UniformSpace.toTopologicalSpace.{u2} 𝕜 (PseudoMetricSpace.toUniformSpace.{u2} 𝕜 (SeminormedRing.toPseudoMetricSpace.{u2} 𝕜 (SeminormedCommRing.toSeminormedRing.{u2} 𝕜 (NormedCommRing.toSeminormedCommRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))) (OfNat.ofNat.{u2} 𝕜 1 (One.toOfNat1.{u2} 𝕜 (NonAssocRing.toOne.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (NormedRing.toRing.{u2} 𝕜 (NormedCommRing.toNormedRing.{u2} 𝕜 (NormedField.toNormedCommRing.{u2} 𝕜 _inst_7)))))))))
+Case conversion may be inaccurate. Consider using '#align eventually_homothety_image_subset_of_finite_subset_interior eventually_homothety_image_subset_of_finite_subset_interiorₓ'. -/
theorem eventually_homothety_image_subset_of_finite_subset_interior (x : Q) {s : Set Q} {t : Set Q}
(ht : t.Finite) (h : t ⊆ interior s) : ∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ '' t ⊆ s :=
by
@@ -181,6 +291,12 @@ end NormedSpace
variable [NormedSpace ℝ V] [NormedSpace ℝ W]
+/- warning: dist_midpoint_midpoint_le -> dist_midpoint_midpoint_le is a dubious translation:
+lean 3 declaration is
+ forall {V : Type.{u1}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_7 : NormedSpace.{0, u1} Real V Real.normedField _inst_1] (p₁ : V) (p₂ : V) (p₃ : V) (p₄ : V), LE.le.{0} Real Real.hasLe (Dist.dist.{u1} V (PseudoMetricSpace.toHasDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) (midpoint.{0, u1, u1} Real V V Real.ring (invertibleTwo.{0} Real Real.divisionRing (StrictOrderedSemiring.to_charZero.{0} Real Real.strictOrderedSemiring)) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{0, u1} Real V Real.normedField _inst_1 _inst_7) (addGroupIsAddTorsor.{u1} V (SeminormedAddGroup.toAddGroup.{u1} V (SeminormedAddCommGroup.toSeminormedAddGroup.{u1} V _inst_1))) p₁ p₂) (midpoint.{0, u1, u1} Real V V Real.ring (invertibleTwo.{0} Real Real.divisionRing (StrictOrderedSemiring.to_charZero.{0} Real Real.strictOrderedSemiring)) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{0, u1} Real V Real.normedField _inst_1 _inst_7) (addGroupIsAddTorsor.{u1} V (SeminormedAddGroup.toAddGroup.{u1} V (SeminormedAddCommGroup.toSeminormedAddGroup.{u1} V _inst_1))) p₃ p₄)) (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (DivInvMonoid.toHasDiv.{0} Real (DivisionRing.toDivInvMonoid.{0} Real Real.divisionRing))) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (Dist.dist.{u1} V (PseudoMetricSpace.toHasDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) p₁ p₃) (Dist.dist.{u1} V (PseudoMetricSpace.toHasDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) p₂ p₄)) (OfNat.ofNat.{0} Real 2 (OfNat.mk.{0} Real 2 (bit0.{0} Real Real.hasAdd (One.one.{0} Real Real.hasOne)))))
+but is expected to have type
+ forall {V : Type.{u1}} [_inst_1 : SeminormedAddCommGroup.{u1} V] [_inst_7 : NormedSpace.{0, u1} Real V Real.normedField _inst_1] (p₁ : V) (p₂ : V) (p₃ : V) (p₄ : V), LE.le.{0} Real Real.instLEReal (Dist.dist.{u1} V (PseudoMetricSpace.toDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) (midpoint.{0, u1, u1} Real V V Real.instRingReal (invertibleTwo.{0} Real Real.instDivisionRingReal (StrictOrderedSemiring.to_charZero.{0} Real Real.strictOrderedSemiring)) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{0, u1} Real V Real.normedField _inst_1 _inst_7) (NormedAddTorsor.toAddTorsor.{u1, u1} V V _inst_1 (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1) (SeminormedAddCommGroup.toNormedAddTorsor.{u1} V _inst_1)) p₁ p₂) (midpoint.{0, u1, u1} Real V V Real.instRingReal (invertibleTwo.{0} Real Real.instDivisionRingReal (StrictOrderedSemiring.to_charZero.{0} Real Real.strictOrderedSemiring)) (SeminormedAddCommGroup.toAddCommGroup.{u1} V _inst_1) (NormedSpace.toModule.{0, u1} Real V Real.normedField _inst_1 _inst_7) (NormedAddTorsor.toAddTorsor.{u1, u1} V V _inst_1 (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1) (SeminormedAddCommGroup.toNormedAddTorsor.{u1} V _inst_1)) p₃ p₄)) (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (LinearOrderedField.toDiv.{0} Real Real.instLinearOrderedFieldReal)) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (Dist.dist.{u1} V (PseudoMetricSpace.toDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) p₁ p₃) (Dist.dist.{u1} V (PseudoMetricSpace.toDist.{u1} V (SeminormedAddCommGroup.toPseudoMetricSpace.{u1} V _inst_1)) p₂ p₄)) (OfNat.ofNat.{0} Real 2 (instOfNat.{0} Real 2 Real.natCast (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))))))
+Case conversion may be inaccurate. Consider using '#align dist_midpoint_midpoint_le dist_midpoint_midpoint_leₓ'. -/
theorem dist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
dist (midpoint ℝ p₁ p₂) (midpoint ℝ p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / 2 := by
simpa using dist_midpoint_midpoint_le' p₁ p₂ p₃ p₄
@@ -188,6 +304,7 @@ theorem dist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
include V W
+#print AffineMap.ofMapMidpoint /-
/-- A continuous map between two normed affine spaces is an affine map provided that
it sends midpoints to midpoints. -/
def AffineMap.ofMapMidpoint (f : P → Q) (h : ∀ x y, f (midpoint ℝ x y) = midpoint ℝ (f x) (f y))
@@ -201,4 +318,5 @@ def AffineMap.ofMapMidpoint (f : P → Q) (h : ∀ x y, f (midpoint ℝ x y) = m
apply_rules [Continuous.vadd, Continuous.vsub, continuous_const, hfc.comp, continuous_id] ))
(Classical.arbitrary P) fun p => by simp
#align affine_map.of_map_midpoint AffineMap.ofMapMidpoint
+-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/38f16f960f5006c6c0c2bac7b0aba5273188f4e5
@@ -4,13 +4,13 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Joseph Myers, Yury Kudryashov
! This file was ported from Lean 3 source module analysis.normed_space.add_torsor
-! leanprover-community/mathlib commit f2ce6086713c78a7f880485f7917ea547a215982
+! leanprover-community/mathlib commit 78261225eb5cedc61c5c74ecb44e5b385d13b733
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
import Mathbin.Analysis.NormedSpace.Basic
import Mathbin.Analysis.Normed.Group.AddTorsor
-import Mathbin.LinearAlgebra.AffineSpace.Midpoint
+import Mathbin.LinearAlgebra.AffineSpace.MidpointZero
import Mathbin.LinearAlgebra.AffineSpace.AffineSubspace
import Mathbin.Topology.Instances.RealVectorSpace
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
@@ -272,9 +272,7 @@ variable [NormedSpace ℝ V] [NormedSpace ℝ W]
theorem dist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
dist (midpoint ℝ p₁ p₂) (midpoint ℝ p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / 2 := by
- -- Porting note: was `simpa using dist_midpoint_midpoint_le' p₁ p₂ p₃ p₄`
- have := dist_midpoint_midpoint_le' (𝕜 := ℝ) p₁ p₂ p₃ p₄
- simpa using this
+ simpa using dist_midpoint_midpoint_le' (𝕜 := ℝ) p₁ p₂ p₃ p₄
#align dist_midpoint_midpoint_le dist_midpoint_midpoint_le
theorem nndist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
@@ -44,9 +44,7 @@ theorem AffineSubspace.isClosed_direction_iff (s : AffineSubspace 𝕜 Q) :
@[simp]
theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₁ (homothety p₁ c p₂) = ‖c‖ * dist p₁ p₂ := by
- -- porting note (#10745): was `simp [homothety_def, norm_smul, ← dist_eq_norm_vsub, dist_comm]`
- rw [homothety_def, dist_eq_norm_vsub V]
- simp [norm_smul, ← dist_eq_norm_vsub V, dist_comm]
+ simp [homothety_def, norm_smul, ← dist_eq_norm_vsub, dist_comm]
#align dist_center_homothety dist_center_homothety
@[simp]
@@ -276,8 +274,7 @@ theorem dist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
dist (midpoint ℝ p₁ p₂) (midpoint ℝ p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / 2 := by
-- Porting note: was `simpa using dist_midpoint_midpoint_le' p₁ p₂ p₃ p₄`
have := dist_midpoint_midpoint_le' (𝕜 := ℝ) p₁ p₂ p₃ p₄
- rw [Real.norm_eq_abs, abs_two] at this
- exact this
+ simpa using this
#align dist_midpoint_midpoint_le dist_midpoint_midpoint_le
theorem nndist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
In all cases, the original proof works now. I presume this is due to simp changes in Lean 4.7, but haven't verified.
@@ -70,10 +70,8 @@ theorem nndist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
dist (lineMap p₁ p₂ c₁) (lineMap p₁ p₂ c₂) = dist c₁ c₂ * dist p₁ p₂ := by
rw [dist_comm p₁ p₂]
- -- Porting note: was `simp only [lineMap_apply, dist_eq_norm_vsub, vadd_vsub_vadd_cancel_right,`
- -- `← sub_smul, norm_smul, vsub_eq_sub]`
- rw [lineMap_apply, lineMap_apply, dist_eq_norm_vsub V, vadd_vsub_vadd_cancel_right,
- ← sub_smul, norm_smul, ← vsub_eq_sub, ← dist_eq_norm_vsub V, ← dist_eq_norm_vsub 𝕜]
+ simp only [lineMap_apply, dist_eq_norm_vsub, vadd_vsub_vadd_cancel_right,
+ ← sub_smul, norm_smul, vsub_eq_sub]
#align dist_line_map_line_map dist_lineMap_lineMap
@[simp]
@@ -89,9 +87,7 @@ theorem lipschitzWith_lineMap (p₁ p₂ : P) : LipschitzWith (nndist p₁ p₂)
@[simp]
theorem dist_lineMap_left (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c) p₁ = ‖c‖ * dist p₁ p₂ := by
- -- Porting note: was
- -- simpa only [lineMap_apply_zero, dist_zero_right] using dist_lineMap_lineMap p₁ p₂ c 0
- rw [← dist_zero_right, ← dist_lineMap_lineMap, lineMap_apply_zero]
+ simpa only [lineMap_apply_zero, dist_zero_right] using dist_lineMap_lineMap p₁ p₂ c 0
#align dist_line_map_left dist_lineMap_left
@[simp]
@@ -114,9 +110,7 @@ theorem nndist_left_lineMap (p₁ p₂ : P) (c : 𝕜) :
@[simp]
theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) :
dist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖ * dist p₁ p₂ := by
- -- Porting note: was
- -- `simpa only [lineMap_apply_one, dist_eq_norm'] using dist_lineMap_lineMap p₁ p₂ c 1`
- rw [← dist_eq_norm', ← dist_lineMap_lineMap, lineMap_apply_one]
+ simpa only [lineMap_apply_one, dist_eq_norm'] using dist_lineMap_lineMap p₁ p₂ c 1
#align dist_line_map_right dist_lineMap_right
@[simp]
I removed some of the tactics that were not used and are hopefully uncontroversial arising from the linter at #11308.
As the commit messages should convey, the removed tactics are, essentially,
push_cast
norm_cast
congr
norm_num
dsimp
funext
intro
infer_instance
@@ -212,7 +212,6 @@ theorem nndist_right_midpoint (p₁ p₂ : P) :
theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
dist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / ‖(2 : 𝕜)‖ := by
rw [dist_eq_norm_vsub V, dist_eq_norm_vsub V, dist_eq_norm_vsub V, midpoint_vsub_midpoint]
- try infer_instance
rw [midpoint_eq_smul_add, norm_smul, invOf_eq_inv, norm_inv, ← div_eq_inv_mul]
exact div_le_div_of_nonneg_right (norm_add_le _ _) (norm_nonneg _)
#align dist_midpoint_midpoint_le' dist_midpoint_midpoint_le'
/
lemmas (#10634)
The new names and argument orders match the corresponding *
lemmas, which I already took care of in a previous PR.
From LeanAPAP
@@ -214,7 +214,7 @@ theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
rw [dist_eq_norm_vsub V, dist_eq_norm_vsub V, dist_eq_norm_vsub V, midpoint_vsub_midpoint]
try infer_instance
rw [midpoint_eq_smul_add, norm_smul, invOf_eq_inv, norm_inv, ← div_eq_inv_mul]
- exact div_le_div_of_le (norm_nonneg _) (norm_add_le _ _)
+ exact div_le_div_of_nonneg_right (norm_add_le _ _) (norm_nonneg _)
#align dist_midpoint_midpoint_le' dist_midpoint_midpoint_le'
theorem nndist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
@@ -300,7 +300,8 @@ def AffineMap.ofMapMidpoint (f : P → Q) (h : ∀ x y, f (midpoint ℝ x y) = m
AffineMap.mk' f (↑((AddMonoidHom.ofMapMidpoint ℝ ℝ
((AffineEquiv.vaddConst ℝ (f <| c)).symm ∘ f ∘ AffineEquiv.vaddConst ℝ c) (by simp)
fun x y => by -- Porting note: was `by simp [h]`
- simp only [Function.comp_apply, AffineEquiv.vaddConst_apply, AffineEquiv.vaddConst_symm_apply]
+ simp only [c, Function.comp_apply, AffineEquiv.vaddConst_apply,
+ AffineEquiv.vaddConst_symm_apply]
conv_lhs => rw [(midpoint_self ℝ (Classical.arbitrary P)).symm, midpoint_vadd_midpoint, h, h,
midpoint_vsub_midpoint]).toRealLinearMap <| by
apply_rules [Continuous.vadd, Continuous.vsub, continuous_const, hfc.comp, continuous_id]))
@@ -44,7 +44,7 @@ theorem AffineSubspace.isClosed_direction_iff (s : AffineSubspace 𝕜 Q) :
@[simp]
theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₁ (homothety p₁ c p₂) = ‖c‖ * dist p₁ p₂ := by
- -- Porting note: was `simp [homothety_def, norm_smul, ← dist_eq_norm_vsub, dist_comm]`
+ -- porting note (#10745): was `simp [homothety_def, norm_smul, ← dist_eq_norm_vsub, dist_comm]`
rw [homothety_def, dist_eq_norm_vsub V]
simp [norm_smul, ← dist_eq_norm_vsub V, dist_comm]
#align dist_center_homothety dist_center_homothety
@@ -306,3 +306,37 @@ def AffineMap.ofMapMidpoint (f : P → Q) (h : ∀ x y, f (midpoint ℝ x y) = m
apply_rules [Continuous.vadd, Continuous.vsub, continuous_const, hfc.comp, continuous_id]))
c fun p => by simp
#align affine_map.of_map_midpoint AffineMap.ofMapMidpoint
+
+end
+
+section
+
+open Dilation
+
+variable {𝕜 E : Type*} [NormedDivisionRing 𝕜] [SeminormedAddCommGroup E]
+variable [Module 𝕜 E] [BoundedSMul 𝕜 E] {P : Type*} [PseudoMetricSpace P] [NormedAddTorsor E P]
+
+-- TODO: define `ContinuousAffineEquiv` and reimplement this as one of those.
+/-- Scaling by an element `k` of the scalar ring as a `DilationEquiv` with ratio `‖k‖₊`, mapping
+from a normed space to a normed torsor over that space sending `0` to `c`. -/
+@[simps]
+def DilationEquiv.smulTorsor (c : P) {k : 𝕜} (hk : k ≠ 0) : E ≃ᵈ P where
+ toFun := (k • · +ᵥ c)
+ invFun := k⁻¹ • (· -ᵥ c)
+ left_inv x := by simp [inv_smul_smul₀ hk]
+ right_inv p := by simp [smul_inv_smul₀ hk]
+ edist_eq' := ⟨‖k‖₊, nnnorm_ne_zero_iff.mpr hk, fun x y ↦ by
+ rw [show edist (k • x +ᵥ c) (k • y +ᵥ c) = _ from (IsometryEquiv.vaddConst c).isometry ..]
+ exact edist_smul₀ ..⟩
+
+@[simp]
+lemma DilationEquiv.smulTorsor_ratio {c : P} {k : 𝕜} (hk : k ≠ 0) {x y : E}
+ (h : dist x y ≠ 0) : ratio (smulTorsor c hk) = ‖k‖₊ :=
+ Eq.symm <| ratio_unique_of_dist_ne_zero h <| by simp [dist_eq_norm, ← smul_sub, norm_smul]
+
+@[simp]
+lemma DilationEquiv.smulTorsor_preimage_ball {c : P} {k : 𝕜} (hk : k ≠ 0) :
+ smulTorsor c hk ⁻¹' (Metric.ball c ‖k‖) = Metric.ball (0 : E) 1 := by
+ aesop (add simp norm_smul)
+
+end
@@ -3,9 +3,9 @@ Copyright (c) 2020 Joseph Myers. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Joseph Myers, Yury Kudryashov
-/
+import Mathlib.Algebra.CharP.Invertible
import Mathlib.Analysis.NormedSpace.Basic
import Mathlib.Analysis.Normed.Group.AddTorsor
-import Mathlib.LinearAlgebra.AffineSpace.MidpointZero
import Mathlib.LinearAlgebra.AffineSpace.AffineSubspace
import Mathlib.Topology.Instances.RealVectorSpace
@@ -214,7 +214,7 @@ theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
rw [dist_eq_norm_vsub V, dist_eq_norm_vsub V, dist_eq_norm_vsub V, midpoint_vsub_midpoint]
try infer_instance
rw [midpoint_eq_smul_add, norm_smul, invOf_eq_inv, norm_inv, ← div_eq_inv_mul]
- exact div_le_div_of_le_of_nonneg (norm_add_le _ _) (norm_nonneg _)
+ exact div_le_div_of_le (norm_nonneg _) (norm_add_le _ _)
#align dist_midpoint_midpoint_le' dist_midpoint_midpoint_le'
theorem nndist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
cases'
(#9171)
I literally went through and regex'd some uses of cases'
, replacing them with rcases
; this is meant to be a low effort PR as I hope that tools can do this in the future.
rcases
is an easier replacement than cases
, though with better tools we could in future do a second pass converting simple rcases
added here (and existing ones) to cases
.
@@ -255,7 +255,7 @@ variable (𝕜)
theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy : y ∈ interior s) :
∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ y ∈ s := by
rw [(NormedAddCommGroup.nhds_basis_norm_lt (1 : 𝕜)).eventually_iff]
- cases' eq_or_ne y x with h h
+ rcases eq_or_ne y x with h | h
· use 1
simp [h.symm, interior_subset hy]
have hxy : 0 < ‖y -ᵥ x‖ := by rwa [norm_pos_iff, vsub_ne_zero]
This didn't actually work with simp
, as the RHS needs a 𝕜
that can't be guessed.
@@ -232,14 +232,16 @@ end invertibleTwo
dist p (Equiv.pointReflection p q) = dist p q :=
(dist_comm _ _).trans (dist_pointReflection_left _ _)
-@[simp] theorem dist_pointReflection_right (p q : P) :
+variable (𝕜) in
+theorem dist_pointReflection_right (p q : P) :
dist (Equiv.pointReflection p q) q = ‖(2 : 𝕜)‖ * dist p q := by
simp [dist_eq_norm_vsub V, Equiv.pointReflection_vsub_right (G := V),
nsmul_eq_smul_cast 𝕜, norm_smul]
-@[simp] theorem dist_right_pointReflection (p q : P) :
+variable (𝕜) in
+theorem dist_right_pointReflection (p q : P) :
dist q (Equiv.pointReflection p q) = ‖(2 : 𝕜)‖ * dist p q :=
- (dist_comm _ _).trans (dist_pointReflection_right _ _)
+ (dist_comm _ _).trans (dist_pointReflection_right 𝕜 _ _)
theorem antilipschitzWith_lineMap {p₁ p₂ : Q} (h : p₁ ≠ p₂) :
AntilipschitzWith (nndist p₁ p₂)⁻¹ (lineMap p₁ p₂ : 𝕜 → Q) :=
Type _
before the colon (#7718)
We have turned to Type*
instead of Type _
, but many of them remained in mathlib because the straight replacement did not work. In general, having Type _
before the colon is a code smell, though, as it hides which types should be in the same universe and which shouldn't, and is not very robust.
This PR replaces most of the remaining Type _
before the colon (except those in category theory) by Type*
or Type u
. This has uncovered a few bugs (where declarations were not as polymorphic as they should be).
I had to increase heartbeats at two places when replacing Type _
by Type*
, but I think it's worth it as it's really more robust.
@@ -24,12 +24,12 @@ open NNReal Topology
open Filter
-variable {α V P W Q : Type _} [SeminormedAddCommGroup V] [PseudoMetricSpace P] [NormedAddTorsor V P]
+variable {α V P W Q : Type*} [SeminormedAddCommGroup V] [PseudoMetricSpace P] [NormedAddTorsor V P]
[NormedAddCommGroup W] [MetricSpace Q] [NormedAddTorsor W Q]
section NormedSpace
-variable {𝕜 : Type _} [NormedField 𝕜] [NormedSpace 𝕜 V] [NormedSpace 𝕜 W]
+variable {𝕜 : Type*} [NormedField 𝕜] [NormedSpace 𝕜 V] [NormedSpace 𝕜 W]
open AffineMap
@@ -298,7 +298,7 @@ def AffineMap.ofMapMidpoint (f : P → Q) (h : ∀ x y, f (midpoint ℝ x y) = m
AffineMap.mk' f (↑((AddMonoidHom.ofMapMidpoint ℝ ℝ
((AffineEquiv.vaddConst ℝ (f <| c)).symm ∘ f ∘ AffineEquiv.vaddConst ℝ c) (by simp)
fun x y => by -- Porting note: was `by simp [h]`
- simp
+ simp only [Function.comp_apply, AffineEquiv.vaddConst_apply, AffineEquiv.vaddConst_symm_apply]
conv_lhs => rw [(midpoint_self ℝ (Classical.arbitrary P)).symm, midpoint_vadd_midpoint, h, h,
midpoint_vsub_midpoint]).toRealLinearMap <| by
apply_rules [Continuous.vadd, Continuous.vsub, continuous_const, hfc.comp, continuous_id]))
@@ -2,11 +2,6 @@
Copyright (c) 2020 Joseph Myers. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Joseph Myers, Yury Kudryashov
-
-! This file was ported from Lean 3 source module analysis.normed_space.add_torsor
-! leanprover-community/mathlib commit 837f72de63ad6cd96519cde5f1ffd5ed8d280ad0
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Analysis.NormedSpace.Basic
import Mathlib.Analysis.Normed.Group.AddTorsor
@@ -14,6 +9,8 @@ import Mathlib.LinearAlgebra.AffineSpace.MidpointZero
import Mathlib.LinearAlgebra.AffineSpace.AffineSubspace
import Mathlib.Topology.Instances.RealVectorSpace
+#align_import analysis.normed_space.add_torsor from "leanprover-community/mathlib"@"837f72de63ad6cd96519cde5f1ffd5ed8d280ad0"
+
/-!
# Torsors of normed space actions.
@@ -227,6 +227,23 @@ theorem nndist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
end invertibleTwo
+@[simp] theorem dist_pointReflection_left (p q : P) :
+ dist (Equiv.pointReflection p q) p = dist p q := by
+ simp [dist_eq_norm_vsub V, Equiv.pointReflection_vsub_left (G := V)]
+
+@[simp] theorem dist_left_pointReflection (p q : P) :
+ dist p (Equiv.pointReflection p q) = dist p q :=
+ (dist_comm _ _).trans (dist_pointReflection_left _ _)
+
+@[simp] theorem dist_pointReflection_right (p q : P) :
+ dist (Equiv.pointReflection p q) q = ‖(2 : 𝕜)‖ * dist p q := by
+ simp [dist_eq_norm_vsub V, Equiv.pointReflection_vsub_right (G := V),
+ nsmul_eq_smul_cast 𝕜, norm_smul]
+
+@[simp] theorem dist_right_pointReflection (p q : P) :
+ dist q (Equiv.pointReflection p q) = ‖(2 : 𝕜)‖ * dist p q :=
+ (dist_comm _ _).trans (dist_pointReflection_right _ _)
+
theorem antilipschitzWith_lineMap {p₁ p₂ : Q} (h : p₁ ≠ p₂) :
AntilipschitzWith (nndist p₁ p₂)⁻¹ (lineMap p₁ p₂ : 𝕜 → Q) :=
AntilipschitzWith.of_le_mul_dist fun c₁ c₂ => by
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Joseph Myers, Yury Kudryashov
! This file was ported from Lean 3 source module analysis.normed_space.add_torsor
-! leanprover-community/mathlib commit 78261225eb5cedc61c5c74ecb44e5b385d13b733
+! leanprover-community/mathlib commit 837f72de63ad6cd96519cde5f1ffd5ed8d280ad0
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -52,11 +52,23 @@ theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
simp [norm_smul, ← dist_eq_norm_vsub V, dist_comm]
#align dist_center_homothety dist_center_homothety
+@[simp]
+theorem nndist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₁ (homothety p₁ c p₂) = ‖c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_center_homothety _ _ _
+#align nndist_center_homothety nndist_center_homothety
+
@[simp]
theorem dist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₁ = ‖c‖ * dist p₁ p₂ := by rw [dist_comm, dist_center_homothety]
#align dist_homothety_center dist_homothety_center
+@[simp]
+theorem nndist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
+ nndist (homothety p₁ c p₂) p₁ = ‖c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_homothety_center _ _ _
+#align nndist_homothety_center nndist_homothety_center
+
@[simp]
theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
dist (lineMap p₁ p₂ c₁) (lineMap p₁ p₂ c₂) = dist c₁ c₂ * dist p₁ p₂ := by
@@ -67,6 +79,12 @@ theorem dist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
← sub_smul, norm_smul, ← vsub_eq_sub, ← dist_eq_norm_vsub V, ← dist_eq_norm_vsub 𝕜]
#align dist_line_map_line_map dist_lineMap_lineMap
+@[simp]
+theorem nndist_lineMap_lineMap (p₁ p₂ : P) (c₁ c₂ : 𝕜) :
+ nndist (lineMap p₁ p₂ c₁) (lineMap p₁ p₂ c₂) = nndist c₁ c₂ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_lineMap_lineMap _ _ _ _
+#align nndist_line_map_line_map nndist_lineMap_lineMap
+
theorem lipschitzWith_lineMap (p₁ p₂ : P) : LipschitzWith (nndist p₁ p₂) (lineMap p₁ p₂ : 𝕜 → P) :=
LipschitzWith.of_dist_le_mul fun c₁ c₂ =>
((dist_lineMap_lineMap p₁ p₂ c₁ c₂).trans (mul_comm _ _)).le
@@ -79,11 +97,23 @@ theorem dist_lineMap_left (p₁ p₂ : P) (c : 𝕜) : dist (lineMap p₁ p₂ c
rw [← dist_zero_right, ← dist_lineMap_lineMap, lineMap_apply_zero]
#align dist_line_map_left dist_lineMap_left
+@[simp]
+theorem nndist_lineMap_left (p₁ p₂ : P) (c : 𝕜) :
+ nndist (lineMap p₁ p₂ c) p₁ = ‖c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_lineMap_left _ _ _
+#align nndist_line_map_left nndist_lineMap_left
+
@[simp]
theorem dist_left_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₁ (lineMap p₁ p₂ c) = ‖c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_lineMap_left _ _ _)
#align dist_left_line_map dist_left_lineMap
+@[simp]
+theorem nndist_left_lineMap (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₁ (lineMap p₁ p₂ c) = ‖c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_left_lineMap _ _ _
+#align nndist_left_line_map nndist_left_lineMap
+
@[simp]
theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) :
dist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖ * dist p₁ p₂ := by
@@ -92,22 +122,46 @@ theorem dist_lineMap_right (p₁ p₂ : P) (c : 𝕜) :
rw [← dist_eq_norm', ← dist_lineMap_lineMap, lineMap_apply_one]
#align dist_line_map_right dist_lineMap_right
+@[simp]
+theorem nndist_lineMap_right (p₁ p₂ : P) (c : 𝕜) :
+ nndist (lineMap p₁ p₂ c) p₂ = ‖1 - c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_lineMap_right _ _ _
+#align nndist_line_map_right nndist_lineMap_right
+
@[simp]
theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁ p₂ c) = ‖1 - c‖ * dist p₁ p₂ :=
(dist_comm _ _).trans (dist_lineMap_right _ _ _)
#align dist_right_line_map dist_right_lineMap
+@[simp]
+theorem nndist_right_lineMap (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₂ (lineMap p₁ p₂ c) = ‖1 - c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_right_lineMap _ _ _
+#align nndist_right_line_map nndist_right_lineMap
+
@[simp]
theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₂ = ‖1 - c‖ * dist p₁ p₂ := by
rw [homothety_eq_lineMap, dist_lineMap_right]
#align dist_homothety_self dist_homothety_self
+@[simp]
+theorem nndist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
+ nndist (homothety p₁ c p₂) p₂ = ‖1 - c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_homothety_self _ _ _
+#align nndist_homothety_self nndist_homothety_self
+
@[simp]
theorem dist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₂ (homothety p₁ c p₂) = ‖1 - c‖ * dist p₁ p₂ := by rw [dist_comm, dist_homothety_self]
#align dist_self_homothety dist_self_homothety
+@[simp]
+theorem nndist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
+ nndist p₂ (homothety p₁ c p₂) = ‖1 - c‖₊ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_self_homothety _ _ _
+#align nndist_self_homothety nndist_self_homothety
+
section invertibleTwo
variable [Invertible (2 : 𝕜)]
@@ -117,23 +171,47 @@ theorem dist_left_midpoint (p₁ p₂ : P) : dist p₁ (midpoint 𝕜 p₁ p₂)
rw [midpoint, dist_comm, dist_lineMap_left, invOf_eq_inv, ← norm_inv]
#align dist_left_midpoint dist_left_midpoint
+@[simp]
+theorem nndist_left_midpoint (p₁ p₂ : P) :
+ nndist p₁ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_left_midpoint _ _
+#align nndist_left_midpoint nndist_left_midpoint
+
@[simp]
theorem dist_midpoint_left (p₁ p₂ : P) : dist (midpoint 𝕜 p₁ p₂) p₁ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
rw [dist_comm, dist_left_midpoint]
#align dist_midpoint_left dist_midpoint_left
+@[simp]
+theorem nndist_midpoint_left (p₁ p₂ : P) :
+ nndist (midpoint 𝕜 p₁ p₂) p₁ = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_midpoint_left _ _
+#align nndist_midpoint_left nndist_midpoint_left
+
@[simp]
theorem dist_midpoint_right (p₁ p₂ : P) :
dist (midpoint 𝕜 p₁ p₂) p₂ = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
rw [midpoint_comm, dist_midpoint_left, dist_comm]
#align dist_midpoint_right dist_midpoint_right
+@[simp]
+theorem nndist_midpoint_right (p₁ p₂ : P) :
+ nndist (midpoint 𝕜 p₁ p₂) p₂ = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_midpoint_right _ _
+#align nndist_midpoint_right nndist_midpoint_right
+
@[simp]
theorem dist_right_midpoint (p₁ p₂ : P) :
dist p₂ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖⁻¹ * dist p₁ p₂ := by
rw [dist_comm, dist_midpoint_right]
#align dist_right_midpoint dist_right_midpoint
+@[simp]
+theorem nndist_right_midpoint (p₁ p₂ : P) :
+ nndist p₂ (midpoint 𝕜 p₁ p₂) = ‖(2 : 𝕜)‖₊⁻¹ * nndist p₁ p₂ :=
+ NNReal.eq <| dist_right_midpoint _ _
+#align nndist_right_midpoint nndist_right_midpoint
+
theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
dist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (dist p₁ p₃ + dist p₂ p₄) / ‖(2 : 𝕜)‖ := by
rw [dist_eq_norm_vsub V, dist_eq_norm_vsub V, dist_eq_norm_vsub V, midpoint_vsub_midpoint]
@@ -142,6 +220,11 @@ theorem dist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
exact div_le_div_of_le_of_nonneg (norm_add_le _ _) (norm_nonneg _)
#align dist_midpoint_midpoint_le' dist_midpoint_midpoint_le'
+theorem nndist_midpoint_midpoint_le' (p₁ p₂ p₃ p₄ : P) :
+ nndist (midpoint 𝕜 p₁ p₂) (midpoint 𝕜 p₃ p₄) ≤ (nndist p₁ p₃ + nndist p₂ p₄) / ‖(2 : 𝕜)‖₊ :=
+ dist_midpoint_midpoint_le' _ _ _ _
+#align nndist_midpoint_midpoint_le' nndist_midpoint_midpoint_le'
+
end invertibleTwo
theorem antilipschitzWith_lineMap {p₁ p₂ : Q} (h : p₁ ≠ p₂) :
@@ -188,6 +271,11 @@ theorem dist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
exact this
#align dist_midpoint_midpoint_le dist_midpoint_midpoint_le
+theorem nndist_midpoint_midpoint_le (p₁ p₂ p₃ p₄ : V) :
+ nndist (midpoint ℝ p₁ p₂) (midpoint ℝ p₃ p₄) ≤ (nndist p₁ p₃ + nndist p₂ p₄) / 2 :=
+ dist_midpoint_midpoint_le _ _ _ _
+#align nndist_midpoint_midpoint_le nndist_midpoint_midpoint_le
+
/-- A continuous map between two normed affine spaces is an affine map provided that
it sends midpoints to midpoints. -/
def AffineMap.ofMapMidpoint (f : P → Q) (h : ∀ x y, f (midpoint ℝ x y) = midpoint ℝ (f x) (f y))
Now that leanprover/lean4#2210 has been merged, this PR:
set_option synthInstance.etaExperiment true
commands (and some etaExperiment%
term elaborators)set_option maxHeartbeats
commandsCo-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Matthew Ballard <matt@mrb.email>
@@ -44,7 +44,6 @@ theorem AffineSubspace.isClosed_direction_iff (s : AffineSubspace 𝕜 Q) :
rfl
#align affine_subspace.is_closed_direction_iff AffineSubspace.isClosed_direction_iff
-set_option synthInstance.etaExperiment true in -- Porting note: gets around lean4#2074
@[simp]
theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₁ (homothety p₁ c p₂) = ‖c‖ * dist p₁ p₂ := by
@@ -53,7 +52,6 @@ theorem dist_center_homothety (p₁ p₂ : P) (c : 𝕜) :
simp [norm_smul, ← dist_eq_norm_vsub V, dist_comm]
#align dist_center_homothety dist_center_homothety
-set_option synthInstance.etaExperiment true in -- Porting note: gets around lean4#2074
@[simp]
theorem dist_homothety_center (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₁ = ‖c‖ * dist p₁ p₂ := by rw [dist_comm, dist_center_homothety]
@@ -99,14 +97,12 @@ theorem dist_right_lineMap (p₁ p₂ : P) (c : 𝕜) : dist p₂ (lineMap p₁
(dist_comm _ _).trans (dist_lineMap_right _ _ _)
#align dist_right_line_map dist_right_lineMap
-set_option synthInstance.etaExperiment true in -- Porting note: gets around lean4#2074
@[simp]
theorem dist_homothety_self (p₁ p₂ : P) (c : 𝕜) :
dist (homothety p₁ c p₂) p₂ = ‖1 - c‖ * dist p₁ p₂ := by
rw [homothety_eq_lineMap, dist_lineMap_right]
#align dist_homothety_self dist_homothety_self
-set_option synthInstance.etaExperiment true in -- Porting note: gets around lean4#2074
@[simp]
theorem dist_self_homothety (p₁ p₂ : P) (c : 𝕜) :
dist p₂ (homothety p₁ c p₂) = ‖1 - c‖ * dist p₁ p₂ := by rw [dist_comm, dist_homothety_self]
@@ -157,7 +153,6 @@ theorem antilipschitzWith_lineMap {p₁ p₂ : Q} (h : p₁ ≠ p₂) :
variable (𝕜)
-set_option synthInstance.etaExperiment true in -- Porting note: gets around lean4#2074
theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy : y ∈ interior s) :
∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ y ∈ s := by
rw [(NormedAddCommGroup.nhds_basis_norm_lt (1 : 𝕜)).eventually_iff]
@@ -172,7 +167,6 @@ theorem eventually_homothety_mem_of_mem_interior (x : Q) {s : Set Q} {y : Q} (hy
rwa [homothety_apply, Metric.mem_ball, dist_eq_norm_vsub W, vadd_vsub_eq_sub_vsub]
#align eventually_homothety_mem_of_mem_interior eventually_homothety_mem_of_mem_interior
-set_option synthInstance.etaExperiment true in -- Porting note: gets around lean4#2074
theorem eventually_homothety_image_subset_of_finite_subset_interior (x : Q) {s : Set Q} {t : Set Q}
(ht : t.Finite) (h : t ⊆ interior s) : ∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ '' t ⊆ s := by
suffices ∀ y ∈ t, ∀ᶠ δ in 𝓝 (1 : 𝕜), homothety x δ y ∈ s by
The unported dependencies are
algebra.order.module
init.core
algebra.order.monoid.cancel.defs
algebra.abs
algebra.group_power.lemmas
init.data.list.basic
algebra.order.monoid.cancel.basic
init.data.list.default
topology.subset_properties
init.logic
The following 1 dependencies have changed in mathlib3 since they were ported, which may complicate porting this file