pith. machine review for the scientific record. sign in

IndisputableMonolith.Gravity.DerivedFactors

IndisputableMonolith/Gravity/DerivedFactors.lean · 148 lines · 7 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: ready · generated 2026-05-13 05:25:28.240034+00:00

   1import Mathlib
   2import IndisputableMonolith.Gravity.GravityParameters
   3-- import IndisputableMonolith.DFT.SevenBeatViolation  -- [not in public release]
   4import IndisputableMonolith.Constants
   5
   6/-!
   7# Derived Morphology and Radial Factors
   8
   9This module attempts to derive the `ξ` (morphology) and `n(r)` (radial) factors
  10from first principles, specifically using the logic of `SevenBeatViolation` and
  11`ScaleGate` saturation.
  12
  13## The Problem: HSB Overprediction
  14As noted in the `ILG_CONVOLUTION_PLAN`, the ILG kernel overpredicts rotation
  15velocities for High Surface Brightness (HSB) galaxies (baryon-dominated) and
  16underpredicts for Low Surface Brightness (LSB) galaxies (DM-dominated).
  17
  18This implies a **suppression mechanism** is needed at high acceleration/surface density,
  19where the ILG effect should turn off (recovering Newtonian behavior).
  20
  21## Hypothesis: Seven-Beat Leakage Saturation
  22The `SevenBeatViolation` module establishes that an 8-beat cycle is the minimal
  23valid period for D=3. A 7-beat cycle fails neutrality and completeness.
  24
  25At high energy densities (high acceleration), the "stiffness" of the 8-beat
  26lock might be overcome by "leakage" into 7-beat modes (or other non-power-of-2 modes).
  27If these modes cannot carry the ILG "meaning" (force modification), the effective
  28coupling `ξ` drops.
  29
  30We quantify this via a "Saturation Scale" related to the gap between 8-beat and 7-beat modes.
  31-/
  32
  33namespace IndisputableMonolith
  34namespace Gravity
  35namespace DerivedFactors
  36
  37open Real Constants GravityParameters
  38
  39noncomputable section
  40
  41/-! ## 1. The Seven-Beat Gap -/
  42
  43/-- The relative "mode gap" between the valid 8-beat cycle and the invalid 7-beat cycle.
  44    8-beat has 7 active modes (plus DC).
  45    7-beat has 6 degrees of freedom (neutrality constraint on 7 slots).
  46    Relative gap = (7 - 6) / 8 = 1/8.
  47    Alternatively, using `p_steepness` logic: 1 - 1/8.
  48    Let's use the inverse gap as a stiffness factor. -/
  49def seven_beat_gap : ℝ := 1 / 8
  50
  51/-- The stiffness of the 8-beat lock against 7-beat leakage.
  52    Stiffness = 1 / Gap = 8. -/
  53def lock_stiffness : ℝ := 1 / seven_beat_gap
  54
  55/-! ## 2. Saturation Acceleration Scale -/
  56
  57/-- The acceleration scale where "saturation" (leakage) begins.
  58    Hypothesis: The critical acceleration `a_sat` is the characteristic scale `a0`
  59    boosted by the stiffness of the 8-beat lock.
  60
  61    a_sat = stiffness * a0 = 8 * a0.
  62
  63    Physical intuition: You need 8x the characteristic acceleration to "break"
  64    the 8-beat coherence and suppress the ILG effect. -/
  65def a_saturation (a0 : ℝ) : ℝ := lock_stiffness * a0
  66
  67/-! ## 3. Derived Suppression Factor ξ -/
  68
  69/-- The HSB suppression factor ξ(g).
  70    This factor multiplies the ILG kernel amplitude.
  71
  72    Behavior:
  73    - Low g (<< a_sat): ξ ≈ 1 (Full ILG effect)
  74    - High g (>> a_sat): ξ -> 0 (Newtonian recovery)
  75
  76    Functional form: Standard saturation `1 / (1 + x)`.
  77    Argument x: `g / a_sat`.
  78
  79    Formula: ξ(g) = 1 / (1 + g / (8*a0))
  80
  81    This provides the necessary suppression for HSB galaxies (where g is high)
  82    while maintaining the ILG boost for LSB galaxies (where g is low). -/
  83def xi_derived (g_baryon : ℝ) (a0 : ℝ) : ℝ :=
  84  1 / (1 + g_baryon / (a_saturation a0))
  85
  86/-! ## 4. Radial Profile n(r) -/
  87
  88/-- The radial profile `n(r)` was calibrated to increase at large radii.
  89    From a derived perspective, this is likely the inverse of the suppression.
  90
  91    As r increases, acceleration g drops.
  92    So ξ(g) increases towards 1.
  93
  94    If `n(r)` is meant to provide *extra* boost at very low density (LSB underprediction),
  95    it might be a "Resonance" term that kicks in when `g < a0`.
  96
  97    Hypothesis: `n(r)` is related to the `ScaleGate` threshold `λ_rec`.
  98    If density drops near `λ_rec`, maybe we get critical opalescence (enhancement)?
  99
 100    For now, we define `n_derived` as unity, assuming `xi_derived` handles the
 101    main systematic bias (HSB overprediction). The LSB underprediction might
 102    require tuning `a0` or `C` rather than a separate `n(r)`. -/
 103def n_derived : ℝ := 1
 104
 105/-! ## 5. Theoretical Bounds -/
 106
 107/-- Theorem: HSB Suppression recovers Newtonian limit.
 108    As baryon acceleration goes to infinity, the ILG modification vanishes. -/
 109theorem hsb_suppression_limit (a0 : ℝ) (ha0 : a0 > 0) :
 110    Filter.Tendsto (fun g => xi_derived g a0) Filter.atTop (nhds 0) := by
 111  unfold xi_derived
 112  have h_sat_pos : a_saturation a0 > 0 := by
 113    unfold a_saturation lock_stiffness seven_beat_gap
 114    linarith
 115  -- Rewrite 1/(1+x) as (1+x)⁻¹ to match inv_tendsto_atTop
 116  rw [show (fun g => 1 / (1 + g / a_saturation a0)) = (fun g => (1 + g / a_saturation a0)⁻¹) by ext; simp]
 117  apply Filter.Tendsto.inv_tendsto_atTop
 118  apply Filter.tendsto_atTop_add_const_left
 119  apply Filter.Tendsto.atTop_mul_const (inv_pos.mpr h_sat_pos) Filter.tendsto_id
 120
 121/-- Theorem: LSB Limit is Unsuppressed.
 122    As baryon acceleration goes to zero, the suppression factor goes to 1. -/
 123theorem lsb_unsuppressed_limit (a0 : ℝ) (ha0 : a0 > 0) :
 124    Filter.Tendsto (fun g => xi_derived g a0) (nhds 0) (nhds 1) := by
 125  unfold xi_derived
 126  -- We prove 1 / (1 + g / K) -> 1
 127  -- Rewrite 1 as 1 / (1 + 0 / K)
 128  conv in (nhds 1) => rw [show (1 : ℝ) = 1 / (1 + 0 / a_saturation a0) by
 129    field_simp [a_saturation, lock_stiffness, seven_beat_gap]; linarith]
 130  apply Filter.Tendsto.div
 131  · exact tendsto_const_nhds
 132  · apply Filter.Tendsto.add
 133    · exact tendsto_const_nhds
 134    · apply Filter.Tendsto.div
 135      · exact Filter.tendsto_id
 136      · exact tendsto_const_nhds
 137      · -- Denominator ≠ 0
 138        unfold a_saturation lock_stiffness seven_beat_gap
 139        linarith
 140  · -- Limit denominator (1 + 0) ≠ 0
 141    norm_num
 142
 143end
 144
 145end DerivedFactors
 146end Gravity
 147end IndisputableMonolith
 148

source mirrored from github.com/jonwashburn/shape-of-logic