IndisputableMonolith.Gravity.DerivedFactors
IndisputableMonolith/Gravity/DerivedFactors.lean · 148 lines · 7 declarations
show as:
view math explainer →
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