abbrev
definition
rotorPath
show as:
view math explainer →
open explainer
Generate a durable explainer page for this declaration.
open lean source
IndisputableMonolith.Flight.Geometry on GitHub at line 41.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
formal source
38/-- Rotor radial path: log-spiral scaling on the φ lattice.
39
40`r(θ) = r0 · φ^{(κ·θ)/(2π)}`. -/
41noncomputable abbrev rotorPath := IndisputableMonolith.Spiral.SpiralField.logSpiral
42
43namespace SpiralLemmas
44
45open IndisputableMonolith.Spiral
46
47/-- `logSpiral` is nonzero whenever `r0` is nonzero (since φ^x > 0). -/
48lemma logSpiral_ne_zero
49 {r0 θ : ℝ} {P : SpiralField.Params} (hr0 : r0 ≠ 0) :
50 SpiralField.logSpiral r0 θ P ≠ 0 := by
51 classical
52 unfold SpiralField.logSpiral
53 -- `φ > 0` hence `φ^exp > 0`.
54 have hφpos : 0 < IndisputableMonolith.Constants.phi :=
55 IndisputableMonolith.Constants.phi_pos
56 have hrpow_ne : Real.rpow IndisputableMonolith.Constants.phi
57 ((P.kappa : ℝ) * θ / (2 * Real.pi)) ≠ 0 := by
58 exact ne_of_gt (Real.rpow_pos_of_pos hφpos _)
59 exact mul_ne_zero hr0 hrpow_ne
60
61/-- Closed-form step ratio for the log-spiral: it depends only on `Δθ` and `kappa`.
62
63This is the mathematical kernel behind the "discrete pitch families" idea.
64
65We assume `r0 ≠ 0` to avoid the definitional `if r₀ = 0 then 1` branch
66in `SpiralField.stepRatio`.
67-/
68lemma stepRatio_logSpiral_closed_form
69 (r0 θ Δθ : ℝ) (P : SpiralField.Params) (hr0 : r0 ≠ 0) :
70 SpiralField.stepRatio r0 θ Δθ P
71 = Real.rpow IndisputableMonolith.Constants.phi ((P.kappa : ℝ) * Δθ / (2 * Real.pi)) := by