Pith. sign in

IndisputableMonolith.Masses.Verification

IndisputableMonolith/Masses/Verification.lean · 414 lines · 53 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: ready · generated 2026-08-10 15:49:03.769830+00:00

   1import Mathlib
   2import IndisputableMonolith.Constants
   3import IndisputableMonolith.Masses.Anchor
   4import IndisputableMonolith.Numerics.Interval.PhiBounds
   5
   6/-!
   7# Mass Predictions vs PDG — Machine-Verified Comparison
   8
   9## Epistemological Status
  10
  11**QUARANTINED** from the certified surface: experimental values are imported
  12constants, not derived from RS.
  13
  14## Formula
  15
  16For the lepton sector (B_pow = -22, r0 = 62), the integer-rung prediction is:
  17
  18  m(Lepton, r) = φ^{57+r} / (2^22 × 10^6)   [MeV]
  19
  20## References
  21
  22- PDG 2024: Navas et al., Phys. Rev. D 110, 030001 (2024)
  23-/
  24
  25namespace IndisputableMonolith.Masses.Verification
  26
  27open Anchor
  28
  29noncomputable section
  30
  31private lemma phi_eq_goldenRatio : Constants.phi = Real.goldenRatio := by
  32  unfold Constants.phi Real.goldenRatio; ring
  33
  34/-! ## PDG 2024 Experimental Masses (MeV) -/
  35
  36def m_e_exp : ℝ := 0.51099895069
  37def m_mu_exp : ℝ := 105.6583755
  38def m_tau_exp : ℝ := 1776.86
  39
  40/-! ## Integer-Rung Mass Formula -/
  41
  42noncomputable def rs_mass_MeV (s : Anchor.Sector) (r : ℤ) : ℝ :=
  43  (2 : ℝ) ^ (B_pow s) * Constants.phi ^ (-(5 : ℤ)) *
  44    Constants.phi ^ (r0 s) * Constants.phi ^ r / 1000000
  45
  46/-! ## npow prediction helpers -/
  47
  48noncomputable def electron_pred : ℝ := Constants.phi ^ (59 : ℕ) / 4194304000000
  49noncomputable def muon_pred : ℝ := Constants.phi ^ (70 : ℕ) / 4194304000000
  50noncomputable def tau_pred : ℝ := Constants.phi ^ (76 : ℕ) / 4194304000000
  51
  52private lemma zpow_sum3 (x : ℝ) (a b c : ℤ) (hx : x ≠ 0) :
  53    x ^ a * x ^ b * x ^ c = x ^ (a + b + c) := by
  54  rw [← zpow_add₀ hx, ← zpow_add₀ hx]
  55
  56private lemma lepton_pred_eq_aux (n : ℕ) (r : ℤ) (h : (-5 : ℤ) + 62 + r = (n : ℤ)) :
  57    rs_mass_MeV .Lepton r = Constants.phi ^ n / 4194304000000 := by
  58  unfold rs_mass_MeV
  59  simp only [B_pow_Lepton_eq, r0_Lepton_eq]
  60  have hphi : Constants.phi ≠ 0 := ne_of_gt Constants.phi_pos
  61  have hphi_combine : Constants.phi ^ (-5 : ℤ) * Constants.phi ^ (62 : ℤ) * Constants.phi ^ r =
  62      Constants.phi ^ ((n : ℕ) : ℤ) := by
  63    rw [← zpow_add₀ hphi, ← zpow_add₀ hphi]; congr 1
  64  conv_lhs =>
  65    rw [show (2 : ℝ) ^ (-22 : ℤ) * Constants.phi ^ (-5 : ℤ) * Constants.phi ^ (62 : ℤ) * Constants.phi ^ r
  66      = (2 : ℝ) ^ (-22 : ℤ) * (Constants.phi ^ (-5 : ℤ) * Constants.phi ^ (62 : ℤ) * Constants.phi ^ r) from by ring]
  67    rw [hphi_combine, zpow_natCast]
  68  rw [show (2 : ℝ) ^ (-22 : ℤ) = ((4194304 : ℝ))⁻¹ from by
  69    have h22 : (-22 : ℤ) = -↑(22 : ℕ) := by norm_num
  70    rw [h22, zpow_neg_coe_of_pos (2 : ℝ) (by norm_num : 0 < (22 : ℕ))]; norm_num]
  71  field_simp; ring
  72
  73theorem electron_pred_eq : rs_mass_MeV .Lepton 2 = electron_pred :=
  74  lepton_pred_eq_aux 59 2 (by norm_num)
  75
  76theorem muon_pred_eq : rs_mass_MeV .Lepton 13 = muon_pred :=
  77  lepton_pred_eq_aux 70 13 (by norm_num)
  78
  79theorem tau_pred_eq : rs_mass_MeV .Lepton 19 = tau_pred :=
  80  lepton_pred_eq_aux 76 19 (by norm_num)
  81
  82/-! ## Phi-Power Transfer Lemmas -/
  83
  84private lemma phi59_gt : (2138898000000 : ℝ) < Constants.phi ^ (59 : ℕ) := by
  85  rw [phi_eq_goldenRatio]; exact Numerics.phi_pow59_gt
  86private lemma phi59_lt : Constants.phi ^ (59 : ℕ) < (2139810000000 : ℝ) := by
  87  rw [phi_eq_goldenRatio]; exact Numerics.phi_pow59_lt
  88private lemma phi70_gt : (425698000000000 : ℝ) < Constants.phi ^ (70 : ℕ) := by
  89  rw [phi_eq_goldenRatio]; exact Numerics.phi_pow70_gt
  90private lemma phi70_lt : Constants.phi ^ (70 : ℕ) < (426011000000000 : ℝ) := by
  91  rw [phi_eq_goldenRatio]; exact Numerics.phi_pow70_lt
  92private lemma phi76_gt : (7638724000000000 : ℝ) < Constants.phi ^ (76 : ℕ) := by
  93  rw [phi_eq_goldenRatio]; exact Numerics.phi_pow76_gt
  94private lemma phi76_lt : Constants.phi ^ (76 : ℕ) < (7646046000000000 : ℝ) := by
  95  rw [phi_eq_goldenRatio]; exact Numerics.phi_pow76_lt
  96
  97/-! ## Electron Mass Verification -/
  98
  99theorem electron_mass_bounds :
 100    (0.5098 : ℝ) < electron_pred ∧ electron_pred < (0.5102 : ℝ) := by
 101  unfold electron_pred
 102  constructor
 103  · rw [lt_div_iff₀ (by norm_num : (0 : ℝ) < 4194304000000)]
 104    calc (0.5098 : ℝ) * 4194304000000 < (2138898000000 : ℝ) := by norm_num
 105      _ < Constants.phi ^ 59 := phi59_gt
 106  · rw [div_lt_iff₀ (by norm_num : (0 : ℝ) < 4194304000000)]
 107    calc Constants.phi ^ 59 < (2139810000000 : ℝ) := phi59_lt
 108      _ < (0.5102 : ℝ) * 4194304000000 := by norm_num
 109
 110theorem electron_relative_error :
 111    |rs_mass_MeV .Lepton 2 - m_e_exp| / m_e_exp < 0.003 := by
 112  rw [electron_pred_eq]
 113  have hb := electron_mass_bounds
 114  have hexp_pos : (0 : ℝ) < m_e_exp := by unfold m_e_exp; norm_num
 115  rw [div_lt_iff₀ hexp_pos, abs_lt]
 116  unfold m_e_exp
 117  constructor <;> nlinarith [hb.1, hb.2]
 118
 119/-! ## Muon Mass Verification -/
 120
 121theorem muon_mass_bounds :
 122    (101.49 : ℝ) < muon_pred ∧ muon_pred < (101.57 : ℝ) := by
 123  unfold muon_pred
 124  constructor
 125  · rw [lt_div_iff₀ (by norm_num : (0 : ℝ) < 4194304000000)]
 126    calc (101.49 : ℝ) * 4194304000000 < (425698000000000 : ℝ) := by norm_num
 127      _ < Constants.phi ^ 70 := phi70_gt
 128  · rw [div_lt_iff₀ (by norm_num : (0 : ℝ) < 4194304000000)]
 129    calc Constants.phi ^ 70 < (426011000000000 : ℝ) := phi70_lt
 130      _ < (101.57 : ℝ) * 4194304000000 := by norm_num
 131
 132theorem muon_relative_error :
 133    |rs_mass_MeV .Lepton 13 - m_mu_exp| / m_mu_exp < 0.04 := by
 134  rw [muon_pred_eq]
 135  have hb := muon_mass_bounds
 136  have hexp_pos : (0 : ℝ) < m_mu_exp := by unfold m_mu_exp; norm_num
 137  rw [div_lt_iff₀ hexp_pos, abs_lt]
 138  unfold m_mu_exp
 139  constructor <;> nlinarith [hb.1, hb.2]
 140
 141/-! ## Tau Mass Verification -/
 142
 143theorem tau_mass_bounds :
 144    (1821 : ℝ) < tau_pred ∧ tau_pred < (1823 : ℝ) := by
 145  unfold tau_pred
 146  constructor
 147  · rw [lt_div_iff₀ (by norm_num : (0 : ℝ) < 4194304000000)]
 148    calc (1821 : ℝ) * 4194304000000 < (7638724000000000 : ℝ) := by norm_num
 149      _ < Constants.phi ^ 76 := phi76_gt
 150  · rw [div_lt_iff₀ (by norm_num : (0 : ℝ) < 4194304000000)]
 151    calc Constants.phi ^ 76 < (7646046000000000 : ℝ) := phi76_lt
 152      _ < (1823 : ℝ) * 4194304000000 := by norm_num
 153
 154theorem tau_relative_error :
 155    |rs_mass_MeV .Lepton 19 - m_tau_exp| / m_tau_exp < 0.03 := by
 156  rw [tau_pred_eq]
 157  have hb := tau_mass_bounds
 158  have hexp_pos : (0 : ℝ) < m_tau_exp := by unfold m_tau_exp; norm_num
 159  rw [div_lt_iff₀ hexp_pos, abs_lt]
 160  unfold m_tau_exp
 161  constructor <;> nlinarith [hb.1, hb.2]
 162
 163/-! ## Mass Ratio Verification -/
 164
 165noncomputable def ratio_mu_e_exp : ℝ := m_mu_exp / m_e_exp
 166noncomputable def ratio_tau_e_exp : ℝ := m_tau_exp / m_e_exp
 167
 168theorem ratio_mu_e_exp_bounds :
 169    (206.76 : ℝ) < ratio_mu_e_exp ∧ ratio_mu_e_exp < (206.77 : ℝ) := by
 170  unfold ratio_mu_e_exp m_mu_exp m_e_exp; constructor <;> norm_num
 171
 172theorem ratio_tau_e_exp_bounds :
 173    (3477 : ℝ) < ratio_tau_e_exp ∧ ratio_tau_e_exp < (3478 : ℝ) := by
 174  unfold ratio_tau_e_exp m_tau_exp m_e_exp; constructor <;> norm_num
 175
 176private lemma phi11_gt : (198.9 : ℝ) < Constants.phi ^ (11 : ℕ) := by
 177  rw [phi_eq_goldenRatio]
 178  have h8 := Numerics.phi_pow8_gt
 179  have h3 := Numerics.phi_cubed_gt
 180  have hpos : (0 : ℝ) < Real.goldenRatio ^ 8 := by positivity
 181  have heq : Real.goldenRatio ^ 11 = Real.goldenRatio ^ 8 * Real.goldenRatio ^ 3 := by ring_nf
 182  rw [heq]
 183  calc (198.9 : ℝ) < (46.97 : ℝ) * (4.236 : ℝ) := by norm_num
 184    _ < Real.goldenRatio ^ 8 * (4.236 : ℝ) := by nlinarith
 185    _ < Real.goldenRatio ^ 8 * Real.goldenRatio ^ 3 := by nlinarith
 186
 187private lemma phi11_lt : Constants.phi ^ (11 : ℕ) < (200 : ℝ) := by
 188  rw [phi_eq_goldenRatio]
 189  have h8 := Numerics.phi_pow8_lt
 190  have h3 := Numerics.phi_cubed_lt
 191  have hpos : (0 : ℝ) < Real.goldenRatio ^ 3 := by positivity
 192  have heq : Real.goldenRatio ^ 11 = Real.goldenRatio ^ 8 * Real.goldenRatio ^ 3 := by ring_nf
 193  rw [heq]
 194  calc Real.goldenRatio ^ 8 * Real.goldenRatio ^ 3
 195      < (46.99 : ℝ) * Real.goldenRatio ^ 3 := by nlinarith
 196    _ < (46.99 : ℝ) * (4.237 : ℝ) := by nlinarith
 197    _ < (200 : ℝ) := by norm_num
 198
 199private lemma phi17_gt : (3569 : ℝ) < Constants.phi ^ (17 : ℕ) := by
 200  rw [phi_eq_goldenRatio]
 201  have h8_lo := Numerics.phi_pow8_gt
 202  have hφ_lo := Numerics.phi_gt_1618
 203  have hpos8 : (0 : ℝ) < Real.goldenRatio ^ 8 := by positivity
 204  have hpos16 : (0 : ℝ) < Real.goldenRatio ^ 8 * Real.goldenRatio ^ 8 := by positivity
 205  have heq : Real.goldenRatio ^ 17 = Real.goldenRatio ^ 8 * Real.goldenRatio ^ 8 * Real.goldenRatio := by ring_nf
 206  rw [heq]
 207  have h16_lo : (46.97 : ℝ) * (46.97 : ℝ) < Real.goldenRatio ^ 8 * Real.goldenRatio ^ 8 :=
 208    mul_lt_mul h8_lo (le_of_lt h8_lo) (by norm_num) (le_of_lt hpos8)
 209  have h17_lo : (46.97 : ℝ) * (46.97 : ℝ) * (1.618 : ℝ) <
 210      Real.goldenRatio ^ 8 * Real.goldenRatio ^ 8 * Real.goldenRatio :=
 211    mul_lt_mul h16_lo (le_of_lt hφ_lo) (by norm_num) (le_of_lt hpos16)
 212  linarith [show (3569 : ℝ) < (46.97 : ℝ) * (46.97 : ℝ) * (1.618 : ℝ) from by norm_num]
 213
 214private lemma phi17_lt : Constants.phi ^ (17 : ℕ) < (3574 : ℝ) := by
 215  rw [phi_eq_goldenRatio]
 216  have h8_hi := Numerics.phi_pow8_lt
 217  have hφ_hi := Numerics.phi_lt_16185
 218  have hpos8 : (0 : ℝ) < Real.goldenRatio ^ 8 := by positivity
 219  have hφ_pos : (0 : ℝ) < Real.goldenRatio := by simpa using Real.goldenRatio_pos
 220  have heq : Real.goldenRatio ^ 17 = Real.goldenRatio ^ 8 * Real.goldenRatio ^ 8 * Real.goldenRatio := by ring_nf
 221  rw [heq]
 222  have h16_hi : Real.goldenRatio ^ 8 * Real.goldenRatio ^ 8 < (46.99 : ℝ) * (46.99 : ℝ) :=
 223    mul_lt_mul h8_hi (le_of_lt h8_hi) hpos8 (by norm_num)
 224  have h17_hi : Real.goldenRatio ^ 8 * Real.goldenRatio ^ 8 * Real.goldenRatio <
 225      (46.99 : ℝ) * (46.99 : ℝ) * (1.6185 : ℝ) :=
 226    mul_lt_mul h16_hi (le_of_lt hφ_hi) hφ_pos (by norm_num)
 227  linarith [show (46.99 : ℝ) * (46.99 : ℝ) * (1.6185 : ℝ) < (3574 : ℝ) from by norm_num]
 228
 229theorem muon_ratio_undershoot :
 230    Constants.phi ^ (11 : ℕ) < ratio_mu_e_exp := by
 231  linarith [phi11_lt, ratio_mu_e_exp_bounds.1]
 232
 233theorem tau_ratio_overshoot :
 234    ratio_tau_e_exp < Constants.phi ^ (17 : ℕ) := by
 235  linarith [phi17_gt, ratio_tau_e_exp_bounds.2]
 236
 237theorem muon_electron_ratio_error :
 238    |Constants.phi ^ (11 : ℕ) - ratio_mu_e_exp| / ratio_mu_e_exp < 0.04 := by
 239  have hr := ratio_mu_e_exp_bounds
 240  have hexp_pos : (0 : ℝ) < ratio_mu_e_exp := by linarith [hr.1]
 241  rw [div_lt_iff₀ hexp_pos, abs_lt]
 242  constructor <;> nlinarith [phi11_gt, phi11_lt, hr.1, hr.2]
 243
 244theorem tau_electron_ratio_error :
 245    |Constants.phi ^ (17 : ℕ) - ratio_tau_e_exp| / ratio_tau_e_exp < 0.03 := by
 246  have hr := ratio_tau_e_exp_bounds
 247  have hexp_pos : (0 : ℝ) < ratio_tau_e_exp := by linarith [hr.1]
 248  rw [div_lt_iff₀ hexp_pos, abs_lt]
 249  constructor <;> nlinarith [phi17_gt, phi17_lt, hr.1, hr.2]
 250
 251/-! ## Summary Certificate
 252
 253NAMING NOTE (2026-07-06 honesty pass): this structure certifies RESIDUALS,
 254not successes. The muon lands ~3.75% below and the tau ~6.70% above the
 255integer-rung prediction, while both masses are measured to better than a
 256part in 10⁵. What the certificate proves is exactly that the stated
 257tolerance intervals hold — i.e. the ladder is a leading-order ansatz with
 258percent-level residuals, not a precision match. Interpreting these bounds
 259as "verification" of the mass model was flagged by the 2026 mass-program
 260audit; the docstrings now state the residual reading explicitly. -/
 261
 262structure MassVerificationCert where
 263  electron_in_range : (0.5098 : ℝ) < electron_pred ∧ electron_pred < 0.5102
 264  muon_in_range : (101.49 : ℝ) < muon_pred ∧ muon_pred < 101.57
 265  tau_in_range : (1821 : ℝ) < tau_pred ∧ tau_pred < 1823
 266  electron_pct : |rs_mass_MeV .Lepton 2 - m_e_exp| / m_e_exp < 0.003
 267  muon_pct : |rs_mass_MeV .Lepton 13 - m_mu_exp| / m_mu_exp < 0.04
 268  tau_pct : |rs_mass_MeV .Lepton 19 - m_tau_exp| / m_tau_exp < 0.03
 269  mu_e_ratio_pct : |Constants.phi ^ (11 : ℕ) - ratio_mu_e_exp| / ratio_mu_e_exp < 0.04
 270  tau_e_ratio_pct : |Constants.phi ^ (17 : ℕ) - ratio_tau_e_exp| / ratio_tau_e_exp < 0.03
 271
 272theorem mass_verification_cert_exists : Nonempty MassVerificationCert :=
 273  ⟨{ electron_in_range := electron_mass_bounds
 274     muon_in_range := muon_mass_bounds
 275     tau_in_range := tau_mass_bounds
 276     electron_pct := electron_relative_error
 277     muon_pct := muon_relative_error
 278     tau_pct := tau_relative_error
 279     mu_e_ratio_pct := muon_electron_ratio_error
 280     tau_e_ratio_pct := tau_electron_ratio_error }⟩
 281
 282/-! ## Proton Mass Verification
 283
 284The proton mass is dominated by QCD binding energy (~99%). In the
 285phi-ladder framework, the binding energy sits at `E_coh × φ^r_binding`
 286where `r_binding = 48` is the nearest integer rung (binding exponent 43).
 287
 288The total proton mass ≈ `φ^43 / 10^6` MeV (valence quarks contribute <0.001%). -/
 289
 290def m_p_exp : ℝ := 938.272
 291
 292noncomputable def proton_binding_pred : ℝ := Constants.phi ^ (43 : ℕ) / 1000000
 293
 294private lemma phi43_gt : (969030000 : ℝ) < Constants.phi ^ (43 : ℕ) := by
 295  rw [phi_eq_goldenRatio]; exact Numerics.phi_pow43_gt
 296private lemma phi43_lt : Constants.phi ^ (43 : ℕ) < (970320000 : ℝ) := by
 297  rw [phi_eq_goldenRatio]; exact Numerics.phi_pow43_lt
 298
 299/-- The proton binding-energy prediction lies in (969, 970.4) MeV. -/
 300theorem proton_mass_bounds :
 301    (969 : ℝ) < proton_binding_pred ∧ proton_binding_pred < (970.4 : ℝ) := by
 302  unfold proton_binding_pred
 303  constructor
 304  · rw [lt_div_iff₀ (by norm_num : (0 : ℝ) < 1000000)]
 305    calc (969 : ℝ) * 1000000 < (969030000 : ℝ) := by norm_num
 306      _ < Constants.phi ^ 43 := phi43_gt
 307  · rw [div_lt_iff₀ (by norm_num : (0 : ℝ) < 1000000)]
 308    calc Constants.phi ^ 43 < (970320000 : ℝ) := phi43_lt
 309      _ < (970400000 : ℝ) := by norm_num
 310      _ = (970.4 : ℝ) * 1000000 := by norm_num
 311
 312/-- The proton prediction (binding-dominated) is within 3.5% of the PDG value.
 313
 314Note: the integer rung 48 is the closest to the proton mass. The ~3.3%
 315overshoot reflects the non-perturbative QCD binding that sits between
 316rungs 47 and 48 on the phi-ladder. -/
 317theorem proton_relative_error :
 318    |proton_binding_pred - m_p_exp| / m_p_exp < 0.035 := by
 319  have hb := proton_mass_bounds
 320  have hexp_pos : (0 : ℝ) < m_p_exp := by unfold m_p_exp; norm_num
 321  rw [div_lt_iff₀ hexp_pos, abs_lt]
 322  unfold m_p_exp
 323  constructor <;> nlinarith [hb.1, hb.2]
 324
 325/-! ## Interval Bounds Supersede mass_ladder_assumption
 326
 327The concrete interval-arithmetic bounds above replace the placeholder
 328`mass_ladder_assumption` from `Assumptions.lean`. The tolerances are
 329percent-level (0.3% / 4% / 3%): they certify residuals of a leading-order
 330ansatz relative to an empirical electron anchor, NOT a parameter-free
 331precision match. -/
 332
 333/-- Interval bounds: the phi-ladder ansatz (with the empirical electron
 334    anchor) reproduces PDG masses to the stated percent-level tolerances.
 335    This supersedes `Masses.mass_ladder_assumption`. -/
 336theorem phi_ladder_verified :
 337    (|electron_pred - m_e_exp| / m_e_exp < 0.003) ∧
 338    (|muon_pred - m_mu_exp| / m_mu_exp < 0.04) ∧
 339    (|tau_pred - m_tau_exp| / m_tau_exp < 0.03) := by
 340  rw [show electron_pred = rs_mass_MeV .Lepton 2 from electron_pred_eq.symm,
 341      show muon_pred = rs_mass_MeV .Lepton 13 from muon_pred_eq.symm,
 342      show tau_pred = rs_mass_MeV .Lepton 19 from tau_pred_eq.symm]
 343  exact ⟨electron_relative_error, muon_relative_error, tau_relative_error⟩
 344
 345/-! ## Quark Sector — φ-Ladder Structural Predictions
 346
 347Quark masses use: rs_mass_MeV(UpQuark, r) = 2^(-1) × φ^(-5) × φ^35 × φ^r / 10^6
 348                                           = φ^(30+r) / 2000000  MeV.
 349
 350For DownQuark: rs_mass_MeV(DownQuark, r) = 2^23 × φ^(-5) × φ^(-5) × φ^r / 10^6
 351                                          = 2^23 × φ^(r-10) / 10^6  MeV.
 352
 353The absolute mass scale requires the gap correction Z, which for quarks involves
 354large integer Z-charges (ZOf_up ≈ 276, ZOf_down ≈ 24 in the RS bridge).
 355The gap-corrected predictions are pending full RSBridge calibration.
 356
 357What IS proved without gap correction:
 358- All quark masses are positive
 359- Within-sector mass ratios follow the φ-ladder (generation spacing)
 360- The up-charm-top spacing φ^11 and φ^6 respectively reproduce correct orders of magnitude
 361-/
 362
 363/-- The up-quark structural mass (UpQuark sector, rung 4, Z=0 gap correction). -/
 364noncomputable def up_quark_pred : ℝ :=
 365  Constants.phi ^ (34 : ℕ) / 2000000
 366
 367/-- The charm-quark structural mass (UpQuark sector, rung 15). -/
 368noncomputable def charm_quark_pred : ℝ :=
 369  Constants.phi ^ (45 : ℕ) / 2000000
 370
 371/-- The top-quark structural mass (UpQuark sector, rung 21). -/
 372noncomputable def top_quark_pred : ℝ :=
 373  Constants.phi ^ (51 : ℕ) / 2000000
 374
 375/-- All structural quark mass predictions are positive. -/
 376theorem quark_preds_pos :
 377    0 < up_quark_pred ∧ 0 < charm_quark_pred ∧ 0 < top_quark_pred := by
 378  unfold up_quark_pred charm_quark_pred top_quark_pred
 379  refine ⟨div_pos (pow_pos Constants.phi_pos _) (by norm_num),
 380          div_pos (pow_pos Constants.phi_pos _) (by norm_num),
 381          div_pos (pow_pos Constants.phi_pos _) (by norm_num)⟩
 382
 383/-- The charm/up ratio equals φ^11 exactly (11-rung generation gap). -/
 384theorem charm_up_ratio : charm_quark_pred / up_quark_pred = Constants.phi ^ (11 : ℕ) := by
 385  unfold charm_quark_pred up_quark_pred
 386  have hpos : (0 : ℝ) < Constants.phi ^ (34 : ℕ) / 2000000 :=
 387    div_pos (pow_pos Constants.phi_pos _) (by norm_num)
 388  field_simp [ne_of_gt hpos]
 389
 390/-- The top/charm ratio equals φ^6 exactly (6-rung gap). -/
 391theorem top_charm_ratio : top_quark_pred / charm_quark_pred = Constants.phi ^ (6 : ℕ) := by
 392  unfold top_quark_pred charm_quark_pred
 393  have hpos : (0 : ℝ) < Constants.phi ^ (45 : ℕ) / 2000000 :=
 394    div_pos (pow_pos Constants.phi_pos _) (by norm_num)
 395  field_simp [ne_of_gt hpos]
 396
 397/-- Top quark structural prediction: φ^51/2000000 is in the multi-GeV range.
 398    This captures the scale correctly even without the full gap correction. -/
 399theorem top_quark_pred_order :
 400    (10000 : ℝ) < top_quark_pred ∧ top_quark_pred < 1000000 := by
 401  unfold top_quark_pred
 402  -- Use pre-computed bounds: phi^51 ∈ (45537548334, 45537549354)
 403  have hlo : (45537548334 : ℝ) < Constants.phi ^ (51 : ℕ) := by
 404    rw [phi_eq_goldenRatio]; exact Numerics.phi_pow51_gt
 405  have hhi : Constants.phi ^ (51 : ℕ) < (45537549354 : ℝ) := by
 406    rw [phi_eq_goldenRatio]; exact Numerics.phi_pow51_lt
 407  constructor
 408  · rw [lt_div_iff₀ (by norm_num : (0:ℝ) < 2000000)]; linarith
 409  · rw [div_lt_iff₀ (by norm_num : (0:ℝ) < 2000000)]; linarith
 410
 411end
 412
 413end IndisputableMonolith.Masses.Verification
 414

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