pith. machine review for the scientific record. sign in
lemma proved tactic proof high

stepRatio_logSpiral_closed_form

show as:
view Lean formalization →

The lemma gives a closed-form expression for the step ratio of a log-spiral path: the ratio equals phi raised to kappa times delta theta over 2 pi, independent of the starting radius and angle. Flight-geometry researchers working on discrete pitch families cite it as the algebraic kernel that converts continuous spiral scaling into discrete multipliers. The proof unfolds the stepRatio definition, invokes the non-zero lemma for the spiral, splits the exponent via ring, applies rpow_add, and cancels common factors with field_simp.

claimLet $r_0, theta, Delta theta in mathbb{R}$ with $r_0 neq 0$, and let $P$ be a spiral-field parameter record whose kappa component is a real number. Then the step ratio along the log-spiral satisfies $r(theta + Delta theta)/r(theta) = phi^{kappa Delta theta / (2 pi)}$, where $phi$ denotes the Recognition Science constant.

background

The module supplies the purely geometric layer of the spiral-field model: phi-tetrahedral angles and log-spiral rotor paths whose radii scale by powers of phi. The function logSpiral r0 theta P returns r0 times phi raised to (kappa times theta over 2 pi); stepRatio is defined as the ratio of two such values, with a special case returning 1 when r0 equals zero. The upstream lemma logSpiral_ne_zero states that logSpiral r0 theta P is nonzero whenever r0 is nonzero, because phi to any real power remains positive.

proof idea

The tactic proof first unfolds stepRatio and applies logSpiral_ne_zero to discharge the zero-radius branch, then simplifies. It splits the combined exponent with a ring identity, invokes Real.rpow_add on the positive phi constant to factor the power, rewrites the factored form, and finishes with field_simp to cancel the common r0-powered term.

why it matters in Recognition Science

This closed form is the direct parent of perTurn_ratio (the special case Delta theta equals 2 pi recovers phi to the kappa) and of kappa_one_step_ratio (the kappa equals 1 instance). It supplies the algebraic engine behind discrete pitch families in the Flight subtheory and sits inside the phi-scaling scaffold that descends from the self-similar fixed point T6. No open scaffolding remains; the lemma is fully proved.

scope and limits

Lean usage

have h := stepRatio_logSpiral_closed_form r0 theta Delta theta P hr0

formal statement (Lean)

  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

proof body

Tactic-mode proof.

  72  classical
  73  -- Unfold the definition and discharge the `if` branch *before* unfolding `logSpiral`.
  74  unfold SpiralField.stepRatio
  75  have hr0path : SpiralField.logSpiral r0 θ P ≠ 0 :=
  76    logSpiral_ne_zero (r0:=r0) (θ:=θ) (P:=P) hr0
  77  simp [hr0path]
  78
  79  -- Now we are proving the ratio identity:
  80  --   r(θ+Δθ)/r(θ) = φ^{κΔθ/(2π)}.
  81  have hφpos : 0 < IndisputableMonolith.Constants.phi := IndisputableMonolith.Constants.phi_pos
  82  simp [SpiralField.logSpiral]
  83  -- Split the exponent using `rpow_add`.
  84  have hexp :
  85      ((P.kappa : ℝ) * (θ + Δθ) / (2 * Real.pi))
  86        = ((P.kappa : ℝ) * θ / (2 * Real.pi)) + ((P.kappa : ℝ) * Δθ / (2 * Real.pi)) := by
  87    ring
  88  have hadd :
  89      Real.rpow IndisputableMonolith.Constants.phi ((P.kappa : ℝ) * (θ + Δθ) / (2 * Real.pi))
  90        =
  91        Real.rpow IndisputableMonolith.Constants.phi ((P.kappa : ℝ) * θ / (2 * Real.pi))
  92          * Real.rpow IndisputableMonolith.Constants.phi ((P.kappa : ℝ) * Δθ / (2 * Real.pi)) := by
  93    simpa [hexp] using
  94      (Real.rpow_add hφpos
  95        ((P.kappa : ℝ) * θ / (2 * Real.pi))
  96        ((P.kappa : ℝ) * Δθ / (2 * Real.pi)))
  97  have hA_ne :
  98      Real.rpow IndisputableMonolith.Constants.phi ((P.kappa : ℝ) * θ / (2 * Real.pi)) ≠ 0 := by
  99    exact ne_of_gt (Real.rpow_pos_of_pos hφpos _)
 100  have haddPow :
 101      IndisputableMonolith.Constants.phi ^ ((P.kappa : ℝ) * (θ + Δθ) / (2 * Real.pi))
 102        =
 103        IndisputableMonolith.Constants.phi ^ ((P.kappa : ℝ) * θ / (2 * Real.pi))
 104          * IndisputableMonolith.Constants.phi ^ ((P.kappa : ℝ) * Δθ / (2 * Real.pi)) := by
 105    simpa using hadd
 106  -- Cancel the common factors.
 107  rw [haddPow]
 108  field_simp [hr0, hA_ne, mul_assoc, mul_left_comm, mul_comm]
 109
 110/-- The step ratio is invariant under scaling the base radius `r0`.
 111
 112This follows immediately from the closed-form identity.
 113-/

used by (4)

From the project-wide theorem graph. These declarations reference this one in their body.

depends on (22)

Lean names referenced from this declaration's body.