def
definition
spatialRadius
show as:
view math explainer →
open explainer
Generate a durable explainer page for this declaration.
open lean source
IndisputableMonolith.Relativity.Calculus.Derivatives on GitHub at line 151.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
used by
-
differentiableAt_coordRay_partialDeriv_v2_radialInv -
differentiableAt_coordRay_radialInv -
differentiableAt_coordRay_spatialNormSq -
differentiableAt_coordRay_spatialRadius -
laplacian_radialInv_n -
laplacian_radialInv_zero_no_const -
partialDeriv_v2_radialInv -
partialDeriv_v2_spatialRadius -
radialInv -
secondDeriv_radialInv -
spatialNormSq_coordRay_spatial_3 -
spatialNormSq_coordRay_temporal -
spatialRadius_coordRay_ne_zero -
spatialRadius_coordRay_ne_zero_eventually -
spatialRadius_coordRay_temporal -
spatialRadius_ne_zero_iff -
spatialRadius_pos_iff -
spatialRadius_pos_of_ne_zero -
C2DischargeCert -
differentiableAt_coordRay_partialDeriv_v2_radialInv_proved -
laplacian_radialInv_n_proved -
laplacian_radialInv_zero_no_const_proved -
partialDeriv_v2_radialInv_proved -
partialDeriv_v2_spatialRadius_proved -
secondDeriv_radialInv_proved -
spatialRadius_coordRay_ne_zero_proved
formal source
148 simp [h]
149
150/-- Spatial radius `r = √(x₁² + x₂² + x₃²)`. -/
151noncomputable def spatialRadius (x : Fin 4 → ℝ) : ℝ := Real.sqrt (spatialNormSq x)
152
153theorem spatialRadius_pos_iff (x : Fin 4 → ℝ) : 0 < spatialRadius x ↔ 0 < spatialNormSq x := by
154 unfold spatialRadius
155 rw [Real.sqrt_pos]
156
157theorem spatialRadius_ne_zero_iff (x : Fin 4 → ℝ) : spatialRadius x ≠ 0 ↔ spatialNormSq x ≠ 0 := by
158 unfold spatialRadius
159 rw [Real.sqrt_ne_zero (spatialNormSq_nonneg x)]
160
161/-- Nonzero spatial radius is automatically positive. -/
162theorem spatialRadius_pos_of_ne_zero (x : Fin 4 → ℝ) (hx : spatialRadius x ≠ 0) :
163 0 < spatialRadius x := by
164 have h_ne : spatialNormSq x ≠ 0 := (spatialRadius_ne_zero_iff x).mp hx
165 exact (spatialRadius_pos_iff x).2 (lt_of_le_of_ne (spatialNormSq_nonneg x) h_ne.symm)
166
167/-- Temporal coordinate ray doesn't change spatial components. -/
168lemma coordRay_temporal_spatial (x : Fin 4 → ℝ) (s : ℝ) (i : Fin 4) (hi : i ≠ 0) :
169 (coordRay x 0 s) i = x i := by
170 simp [coordRay, basisVec, hi]
171
172/-- spatialNormSq is invariant under temporal coordinate ray. -/
173lemma spatialNormSq_coordRay_temporal (x : Fin 4 → ℝ) (s : ℝ) :
174 spatialNormSq (coordRay x 0 s) = spatialNormSq x := by
175 unfold spatialNormSq
176 have h1 : (coordRay x 0 s) 1 = x 1 := coordRay_temporal_spatial x s 1 (by decide)
177 have h2 : (coordRay x 0 s) 2 = x 2 := coordRay_temporal_spatial x s 2 (by decide)
178 have h3 : (coordRay x 0 s) 3 = x 3 := coordRay_temporal_spatial x s 3 (by decide)
179 rw [h1, h2, h3]
180
181/-- spatialRadius is invariant under temporal coordinate ray. -/