substrate_atomic.py
Particle-physics backbone and lattice geometry
The Tier 1 rows: vortex packing fraction, Higgs VEV, fine-structure constant, the Koide relation, the lepton mass ratios, the baryon asymmetry, and the lattice-geometry numbers that ride the same constants.
Download substrate_atomic.py 751 lines · standard library only · run with python3 scripts/substrate_atomic.py
Back to the source-code overview.
scripts/substrate_atomic.py
#!/usr/bin/env python3
"""
substrate_atomic.py — reproduce the atomic / particle-physics predictions
=========================================================================
Companion reproduction script for the standalone science intro,
``arxiv/bridge-paper.qmd``. Where ``substrate_galactic.py`` reproduces the
cosmological (DESI / Hubble-tension) side, this script reproduces the
particle-physics *backbone* predictions of the framework — the rows of the
"Tier 1" tables (§sec-tier1a, §sec-tier1b) that live on the particle-physics
side, plus the lattice-geometry and live-prediction numbers that ride the same
constants:
Quantity Expression Predicted Observed Disc.
--------------------- ----------------------------- ---------- ---------- ------
Vortex packing f 4π/(K√2) 0.5666 0.5655 0.20%
Higgs VEV v √(8π · m_eff² c⁴ · ν) 246.1 GeV 246.22 GeV -0.06%
Fine-structure α sin²δ₀ · sin²θ_W / π 1/135.1 1/137.04 +1.45%
Koide lepton Q 1/3 + (√2)²/6 2/3 0.666660 9 ppm
Min localized modon hc/ξ = 2π m₁c² 12.8 meV — (3 THz) crossover
m_μ/m_e, m_τ/m_e (1+√2 cosθ_k)², δ=2/9 rad 206.77 206.768 0.001%
B-DNA bp/turn 2π r f / h 10.47 10.5 0.3%
Microtubule wall 3/(2f) 2.648 2.594 2.0%
W/Z ratio cosθ_W √(1−sin²θ_W) 0.877 0.882 -0.5%
(g−2)/2 α/2π 0.00116 0.00116 tree
Baryon asymmetry η_B ε_χ⁹, ε_χ=√(π ln2)/K 5.8e-10 6.1e-10 5%
Lightest neutrino m_ν m_eff/ν = m₁ 2 meV Σ≲70 meV live
All "come directly from the same equations" (bridge-paper.qmd, §sec-tier1a):
a single dynamical thread — the mutual-friction coupling
α_mf = tan²θ_W = sin²θ_W/(1−sin²θ_W) — and one geometric backbone,
the Larichev–Reznik structure constant K = j₁₁² + 1. The lattice-geometry
block (GJO vertical period, the Baym-8π structural gap, the coherence ceiling
ℓ_L, the coherence-lifetime ladder) rides the same ξ_SC2, K and ν.
Design goals (mirroring substrate_galactic.py):
* pure Python standard library only — ``python3 scripts/substrate_atomic.py``
runs with no third-party dependencies (no numpy / scipy);
* every constant labelled with its source (CODATA 2018, PDG, Planck 2018);
* every step cross-referenced to an equation anchor in bridge-paper.qmd.
Run:
python3 scripts/substrate_atomic.py
"""
import math
# ══════════════════════════════════════════════════════════════════════════
# Measured input constants
# ══════════════════════════════════════════════════════════════════════════
# Fundamental constants — CODATA 2018.
HBAR = 1.054571817e-34 # reduced Planck constant [J·s]
C = 2.99792458e8 # speed of light [m/s]
H = 2 * math.pi * HBAR # Planck constant [J·s]
M_E = 9.1093837015e-31 # electron mass [kg]
G = 6.67430e-11 # gravitational constant [m³ kg⁻¹ s⁻²]
# Unit helpers.
EV = 1.602176634e-19 # 1 eV in joules [J]
# Electroweak input — PDG, MS-bar at M_Z. The paper quotes sin²θ_W = 0.2312.
SIN2_THETA_W = 0.23121
# Cosmology — Planck 2018 (TT,TE,EE+lowE+lensing). Used only for the packing
# fraction's measured value (bridge-paper.qmd, footnote ^rhodm).
OMEGA_C_H2 = 0.1200 # cold dark matter density parameter Ω_c h²
MPC = 3.0856775814913673e22 # 1 megaparsec in metres [m]
# First positive zero of the Bessel function J₁ (bridge-paper.qmd, @eq-K).
# Hard-coded to avoid a scipy dependency; value is a standard mathematical
# constant, j₁₁ = 3.8317059702075123...
J11 = 3.8317059702075123
# Observed reference values (for the discrepancy column).
F_OBS = 0.5655 # measured packing fraction ρ_DM c ξ_SC2⁴/ℏ
V_HIGGS_OBS = 246.21965e9 # Higgs vacuum expectation value [eV]
ALPHA_INV_OBS = 137.035999 # inverse fine-structure constant
Q_KOIDE_OBS = 0.666660 # measured charged-lepton Koide ratio
# Charged-lepton masses (PDG), used only to *check* the Koide ratio. [MeV/c²]
M_E_MEV, M_MU_MEV, M_TAU_MEV = 0.51099895, 105.6583755, 1776.86
# Observed charged-lepton mass ratios (PDG), for the three-phase clock (^eq-muon).
MU_E_OBS = 206.7682830 # m_μ/m_e
TAU_E_OBS = 3477.23 # m_τ/m_e
# Electroweak boson masses (PDG), for the W/Z ratio (^t2-wz). [GeV/c²]
M_W_GEV, M_Z_GEV = 80.377, 91.1876
# Observed baryon-to-photon ratio (Planck 2018), for η_B (^t2-etab).
ETA_B_OBS = 6.1e-10
# Neutrino oscillation splittings (PDG / NuFIT), normal ordering. [meV]
DM21_MEV = 8.7 # √Δm²_21 (solar)
DM31_MEV = 50.0 # √Δm²_31 (atmospheric)
# B-DNA geometry (chemistry-fixed inputs), for the pitch prediction (^eq-dna).
DNA_R_ANG = 10.0 # backbone helix radius [Å]
DNA_H_ANG = 3.4 # base rise per step [Å]
DNA_BP_OBS = 10.5 # measured bp/turn (solution)
# Microtubule 13-protofilament, 3-start wall (cryo-EM), for R/h_mon (^eq-mt).
MT_RH_OBS = 10.6 / 4.087 # observed R/h_mon = 2.594
# Boltzmann constant — CODATA 2018 — for the coherence-ceiling energy (^t2-reachnull).
KB = 1.380649e-23 # [J/K]
# ══════════════════════════════════════════════════════════════════════════
# Derived substrate quantities (shared by every prediction below)
# ══════════════════════════════════════════════════════════════════════════
def alpha_mf(sin2_thetaW: float = SIN2_THETA_W) -> float:
"""Mutual-friction coupling α_mf = tan²θ_W = sin²θ_W/(1−sin²θ_W).
bridge-paper.qmd §sec-hbar, footnote ^eq-amf. The single dynamical thread
that feeds every prediction here: sin²θ_W = 0.2312 ⇒ α_mf = 0.3008.
"""
return sin2_thetaW / (1.0 - sin2_thetaW)
def K_struct(j11: float = J11) -> float:
"""Larichev–Reznik modon structure constant K = j₁₁² + 1 = 15.68.
bridge-paper.qmd @eq-K. The geometric backbone: the first J₁ lobe laid
across one lattice cell (interior wavenumber p ξ = j₁₁) with the exterior
decaying over one coherence length (q ξ = 1), so p² + q² = K/ξ².
"""
return j11**2 + 1.0
def m_eff() -> float:
"""Effective circulation quantum m_eff = m_e / α_mf [kg].
bridge-paper.qmd @eq-mass, footnote ^meff. One quantum of dc1 circulation:
m_eff c² = m_e c² / α_mf = 0.511 / 0.3008 ≈ 1.70 MeV. A property of the
substrate, shared by every sector.
"""
return M_E / alpha_mf()
def xi_SC2() -> float:
"""Electroweak-scaffold lattice cell size ξ_SC2 [m].
bridge-paper.qmd @eq-route2: ξ_SC2 = (K ℏ α_mf / (2 m_e c))^(1/3) ≈ 96.9 μm.
Assembled from modon matching (K), the SC2 gravitational normalisation
(the 2), and the Gross–Pitaevskii core balance, with the mass relation
m_eff α_mf = m_e trading the substrate mass for the measured electron mass.
"""
return (K_struct() * HBAR * alpha_mf() / (2.0 * M_E * C)) ** (1.0 / 3.0)
def xi_CP(rho_DM: float) -> float:
"""Cosmological (close-packing) lattice cell size ξ_CP [m].
bridge-paper.qmd @eq-route1: ξ_CP = (ℏ / (ρ_DM c))^(1/4) ≈ 111.8 μm.
From the Volovik speed c = ℏ/(m₁ξ), composition n₁m₁ = ρ_DM, and
close-packing n₁ξ³ = 1 — inputs ℏ, c, ρ_DM alone.
"""
return (HBAR / (rho_DM * C)) ** 0.25
def rho_DM() -> float:
"""Dark-matter mass density from Planck Ω_c h² [kg/m³].
bridge-paper.qmd footnote ^rhodm: ρ_DM = Ω_c h² · ρ_crit/h², with
ρ_crit/h² = 3 (100 km/s/Mpc)² / (8πG) = 1.878e-26 kg/m³, giving
ρ_DM = 0.1200 · 1.878e-26 = 2.254e-27 kg/m³.
"""
H100 = 100.0e3 / MPC # 100 km/s/Mpc in s⁻¹
rho_crit_over_h2 = 3.0 * H100**2 / (8.0 * math.pi * G)
return OMEGA_C_H2 * rho_crit_over_h2
def m1_dc1() -> float:
"""dc1 substrate mass on the electroweak side m₁ = ℏ/(c ξ_SC2) [kg].
bridge-paper.qmd @eq-c (Volovik speed). m₁c² ≈ 2 meV — the single dc1
quantum per cell. Read from ξ_SC2 so it is the electroweak-leg value that
the Higgs VEV, ν, and the minimum modon energy all share.
"""
return HBAR / (C * xi_SC2())
def condensation_number() -> float:
"""Condensation number ν = m_eff / m₁ on the electroweak side (≈8.3e8).
bridge-paper.qmd @eq-nu. The count of dc1 quanta (m₁ ≈ 2 meV) in one
effective quantum, with m₁ = ℏ/(c ξ_SC2) read from the electroweak cell —
the value an electroweak observable (the Higgs VEV) must take.
"""
return m_eff() / m1_dc1()
def sc2_identity() -> dict:
"""SC2 normalization κ_q Ω_v = 4π c² — check that m_eff cancels (@eq-sc2).
bridge-paper.qmd @eq-sc2, footnote ^eq-sc2. κ_q = 2πℏ/m_eff is the effective
quantum's circulation, Ω_v = 2 m_eff c²/ℏ its Compton (zitterbewegung) clock;
their product is 4π c² identically — m_eff cancels, so SC2 adds no dynamics,
only the Gauss's-law 4π that normalizes the lattice's induced gravity and
heads the packing fraction. We also verify the two forms of ξ_SC2 agree:
the substrate-mass form ξ_SC2³ = (K/2)·ℏ/(m_eff c) (@eq-route2-sub) and the
measured-electron form ξ_SC2 = (K ℏ α_mf / (2 m_e c))^(1/3) (@eq-route2).
"""
m_e_quantum = m_eff()
kappa_q = 2.0 * math.pi * HBAR / m_e_quantum # circulation quantum
Omega_v = 2.0 * m_e_quantum * C**2 / HBAR # Compton clock
product = kappa_q * Omega_v # must be 4π c²
xi_sub = (K_struct() / 2.0 * HBAR / (m_e_quantum * C)) ** (1.0 / 3.0)
return {
'kappa_Omega': product,
'four_pi_c2': 4.0 * math.pi * C**2,
'match': abs(product - 4.0 * math.pi * C**2) < 1e-6 * C**2,
'xi_from_meff': xi_sub,
'xi_from_me': xi_SC2(),
'xi_forms_match': abs(xi_sub - xi_SC2()) < 1e-12,
}
# ══════════════════════════════════════════════════════════════════════════
# Prediction 1 — vortex packing fraction (the bridge equation)
# ══════════════════════════════════════════════════════════════════════════
def packing_fraction() -> dict:
"""Bridge equation: geometric f = 4π/(K√2) vs measured ρ_DM c ξ_SC2⁴/ℏ.
bridge-paper.qmd @eq-f and @eq-bridge (§sec-bridge-eq). The paper's central
claim: the parameter-free geometric occupancy of one cell equals the
measured occupancy (from ρ_DM, c, ξ_SC2) to within Planck's ~1% on ρ_DM,
central values coinciding to 0.20%.
"""
rho = rho_DM()
xi = xi_SC2()
f_geometric = 4.0 * math.pi / (K_struct() * math.sqrt(2.0)) # @eq-bridge
f_measured = rho * C * xi**4 / HBAR # @eq-f
# Equivalent form: f_measured == (xi_SC2 / xi_CP)**4
assert abs(f_measured - (xi / xi_CP(rho))**4) < 1e-9
return {
'label': 'Vortex packing fraction',
'expression': '4π/(K√2)',
'predicted': f_geometric,
'observed': f_measured,
'pred_str': f'{f_geometric:.4f}',
'obs_str': f'{f_measured:.4f}',
'disc_str': f'{100 * (f_geometric - f_measured) / f_measured:+.2f}%',
}
# ══════════════════════════════════════════════════════════════════════════
# Prediction 2 — Higgs vacuum expectation value
# ══════════════════════════════════════════════════════════════════════════
def higgs_vev() -> dict:
"""Higgs VEV: v = √(8π · m_eff² c⁴ · ν) = √(8π ν) · m_eff c².
bridge-paper.qmd Tier-1 table + footnote ^eq-vev. Built from the effective
quantum m_eff c² = 1.70 MeV and the condensation number ν ≈ 8.3e8 — the
√ν is the relativistic Bose-field amplitude law, the 8π = 2·4π_SC2 the
gravitational (Gauss × radiation-EOS) normalisation. Never references v.
"""
m_eff_energy = m_eff() * C**2 / EV # m_eff c² [eV] (≈1.70e6)
nu = condensation_number()
v = math.sqrt(8.0 * math.pi * nu) * m_eff_energy # [eV]
return {
'label': 'Higgs VEV v',
'expression': '√(8π m_eff² c⁴ ν)',
'predicted': v,
'observed': V_HIGGS_OBS,
'pred_str': f'{v / 1e9:.1f} GeV',
'obs_str': f'{V_HIGGS_OBS / 1e9:.2f} GeV',
'disc_str': f'{100 * (v - V_HIGGS_OBS) / V_HIGGS_OBS:+.2f}%',
}
# ══════════════════════════════════════════════════════════════════════════
# Prediction 3 — fine-structure constant
# ══════════════════════════════════════════════════════════════════════════
def fine_structure() -> dict:
"""Fine-structure constant: α = sin²δ₀ · sin²θ_W / π.
bridge-paper.qmd Tier-1 table + footnote ^eq-delta. The vortex-scattering
phase δ₀ is fixed by the same Weinberg angle through α_mf = ½ sin 2δ₀,
with the weak-scattering branch (α ≪ 1) selecting δ₀ = 18.48°. Tree-level;
the residual +1.45% awaits the modon self-energy (vacuum polarisation).
"""
# α_mf = ½ sin(2δ₀) ⇒ δ₀ = ½ arcsin(2 α_mf), weak-scattering branch.
delta0 = 0.5 * math.asin(2.0 * alpha_mf()) # radians (= 18.48°)
alpha = math.sin(delta0)**2 * SIN2_THETA_W / math.pi
return {
'label': 'Fine-structure α',
'expression': 'sin²δ₀ sin²θ_W / π',
'predicted': alpha,
'observed': 1.0 / ALPHA_INV_OBS,
'pred_str': f'1/{1/alpha:.1f}',
'obs_str': f'1/{ALPHA_INV_OBS:.2f}',
'disc_str': f'{100 * (alpha - 1/ALPHA_INV_OBS) / (1/ALPHA_INV_OBS):+.2f}%',
}
# ══════════════════════════════════════════════════════════════════════════
# Prediction 4 — Koide charged-lepton relation (parameter-free)
# ══════════════════════════════════════════════════════════════════════════
def koide() -> dict:
"""Koide relation: Q = 1/3 + (√2)²/6 = 2/3, exactly.
bridge-paper.qmd Tier-1 table + footnote ^eq-koide. Three generations are
the three 120°-separated branches of one Z₃ (Y-junction) node, so the phase
cancels and Q = 1/3 + A²/6 for any δ; the lattice pairing-√2 quantises the
amplitude at A = √2, giving Q = 2/3 with no free parameter. We also check
it against the measured lepton masses.
"""
A = math.sqrt(2.0)
Q_pred = 1.0 / 3.0 + A**2 / 6.0 # = 2/3 exactly
# Cross-check against PDG masses: Q = Σm / (Σ√m)².
roots = [math.sqrt(m) for m in (M_E_MEV, M_MU_MEV, M_TAU_MEV)]
Q_from_masses = sum((M_E_MEV, M_MU_MEV, M_TAU_MEV)) / sum(roots)**2
ppm = abs(Q_pred - Q_KOIDE_OBS) / Q_KOIDE_OBS * 1e6
return {
'label': 'Koide lepton Q',
'expression': '1/3 + (√2)²/6',
'predicted': Q_pred,
'observed': Q_from_masses,
'pred_str': f'{Q_pred:.6f}',
'obs_str': f'{Q_from_masses:.6f}',
'disc_str': f'{ppm:.0f} ppm',
}
# ══════════════════════════════════════════════════════════════════════════
# Prediction 5 — minimum localized-modon energy (the infrared floor)
# ══════════════════════════════════════════════════════════════════════════
def min_modon_energy() -> dict:
"""Minimum localized modon: E_min = hc/ξ = 2π m₁ c² (@eq-emin, ^eq-floor).
bridge-paper.qmd §sec-modon + Tier-1a row. The Larichev–Reznik matching has
no interior/exterior solution below one cell, so the smallest *localized*
modon is exactly ξ wide (λ = ξ) and carries E_min = hc/ξ; the Volovik
relation ℏ/ξ = m₁c collapses this to the parameter-free 2π m₁c² — the 2π one
full cell circulation, m₁c² the dc1 rest energy per cell. This is a
crossover at λ = ξ (ν ≈ 3 THz), not a spectral cutoff.
"""
m1c2 = m1_dc1() * C**2 # dc1 rest energy [J]
E_min = 2.0 * math.pi * m1c2 # = h c / ξ_SC2
xi = xi_SC2()
E_min_check = H * C / xi # hc/ξ form
assert abs(E_min - E_min_check) < 1e-9 * E_min
return {
'label': 'Min localized modon',
'expression': 'hc/ξ = 2π m₁c²',
'E_min_meV': E_min / EV * 1e3,
'nu_THz': C / xi / 1e12, # ν_floor = c/ξ
'lambda_um': xi * 1e6, # λ = ξ
'm1c2_meV': m1c2 / EV * 1e3,
}
# ══════════════════════════════════════════════════════════════════════════
# Prediction 6 — charged-lepton mass ratios (the three-phase clock)
# ══════════════════════════════════════════════════════════════════════════
def lepton_ratios() -> dict:
"""Three-phase clock: √m_k ∝ 1 + √2 cos(δ + 2πk/3), δ = 2/9 rad (^eq-muon).
bridge-paper.qmd §sec-tier1b + footnote ^eq-muon. Fixing A = √2 (hence the
Koide Q = 2/3) and the electron scale leaves one number, the phase δ where
the rigid 120°-separated triad sits on its circle. The data pick the rational
δ = 2/9 rad (pairing-two over three-fold-squared, and 3δ = 2/3 = Q exactly),
and that one number lands *both* ratios: m_μ/m_e = 206.77 and m_τ/m_e = 3477.5.
The electron is the branch nearest the massless edge (smallest amplitude).
"""
A = math.sqrt(2.0)
delta = 2.0 / 9.0
amp = [(1.0 + A * math.cos(delta + 2.0 * math.pi * k / 3.0))**2
for k in range(3)]
m_e_b, m_mu_b, m_tau_b = sorted(amp) # electron = smallest
mu_e = m_mu_b / m_e_b
tau_e = m_tau_b / m_e_b
return {
'delta': delta,
'mu_e': mu_e,
'tau_e': tau_e,
'mu_e_obs': MU_E_OBS,
'tau_e_obs': TAU_E_OBS,
'mu_disc': 100.0 * (mu_e - MU_E_OBS) / MU_E_OBS,
'tau_disc': 100.0 * (tau_e - TAU_E_OBS) / TAU_E_OBS,
}
# ══════════════════════════════════════════════════════════════════════════
# Prediction 7 — packing fraction locks a helix: B-DNA and the microtubule
# ══════════════════════════════════════════════════════════════════════════
def dna_bp_per_turn() -> dict:
"""B-DNA turns-per-pitch: N = 2π r f / h with tan α_pitch = f (^eq-dna).
bridge-paper.qmd §sec-tier1b. The packing fraction f locks the pitch angle
of the counter-rotating duplex to itself; with the chemistry-fixed radius
r ≈ 10 Å and rise h = 3.4 Å the turns-per-pitch is 2π r f / h = 10.47 bp/turn
(observed 10.5 ± 0.1), and the pitch angle itself is tan α_pitch = f = 0.5666.
"""
f = 4.0 * math.pi / (K_struct() * math.sqrt(2.0))
N = 2.0 * math.pi * DNA_R_ANG * f / DNA_H_ANG
return {
'label': 'B-DNA bp/turn',
'expression': '2π r f / h',
'predicted': N,
'observed': DNA_BP_OBS,
'f': f,
'disc': 100.0 * (N - DNA_BP_OBS) / DNA_BP_OBS,
}
def microtubule_wall() -> dict:
"""Microtubule 3-start wall: R/h_mon = 3/(2f) (^eq-mt).
bridge-paper.qmd §sec-tier1b. The closed-cylinder counterpart of the DNA
pitch: the 13-protofilament, 3-start lateral helix locks tan α_3start to f/π
(one Gauss π absorbed by the closed topology), giving R/h_mon = 3/(2f) = 2.648
against the cryo-EM 10.6/4.087 = 2.594.
"""
f = 4.0 * math.pi / (K_struct() * math.sqrt(2.0))
Rh = 3.0 / (2.0 * f)
return {
'label': 'Microtubule R/h',
'expression': '3/(2f)',
'predicted': Rh,
'observed': MT_RH_OBS,
'disc': 100.0 * (Rh - MT_RH_OBS) / MT_RH_OBS,
}
# ══════════════════════════════════════════════════════════════════════════
# Prediction 8 — W/Z mass ratio and the anomalous moment
# ══════════════════════════════════════════════════════════════════════════
def weinberg_wz() -> dict:
"""W/Z mass ratio: M_W/M_Z = cos θ_W = √(1 − sin²θ_W) (^t2-wz).
bridge-paper.qmd §sec-tier2. The standard gauge relation, but read as the
equatorial spin velocity β_eq of the fermion's counter-rotating boundary
shell: cos θ_W = β_eq. Predicts 0.877 against the measured 80.4/91.2 = 0.882;
the 0.5% residual is the on-shell/pole-mass radiative shift.
"""
cos_tw = math.sqrt(1.0 - SIN2_THETA_W)
obs = M_W_GEV / M_Z_GEV
return {
'label': 'W/Z ratio cosθ_W',
'expression': '√(1−sin²θ_W)',
'predicted': cos_tw,
'observed': obs,
'disc': 100.0 * (cos_tw - obs) / obs,
}
def anomalous_moment() -> dict:
"""Electron anomalous moment: (g−2)/2 = α/2π = η² (^t2-g2, ^t2-quark).
bridge-paper.qmd §sec-tier2. The electron is a dual-spin gyroscope (g = 2 at
leading order); the Schwinger term is the g = 2 asymmetry made quantitative,
η² = α/2π with a 1/2π shell-averaging factor. Uses the framework's own
fine-structure α from fine_structure() so the whole chain is self-contained.
"""
alpha = fine_structure()['predicted']
a_e = alpha / (2.0 * math.pi)
alpha_codata = 1.0 / ALPHA_INV_OBS
a_e_obs = alpha_codata / (2.0 * math.pi) # Schwinger 1-loop value
return {
'label': '(g−2)/2 = α/2π',
'expression': 'α/2π',
'predicted': a_e,
'observed': a_e_obs,
'disc': 100.0 * (a_e - a_e_obs) / a_e_obs,
}
# ══════════════════════════════════════════════════════════════════════════
# Prediction 9 — baryon asymmetry from the modon chirality bias
# ══════════════════════════════════════════════════════════════════════════
def baryon_asymmetry() -> dict:
"""Baryon asymmetry: η_B = ε_χ⁹, ε_χ = √(π ln2)/K = 0.0942 (^t2-etab).
bridge-paper.qmd §sec-tier2. All three Sakharov conditions native to the
boil; the per-interface CP bias ε_χ is fixed by the same modon factor
K = j₁₁²+1 that sets the packing fraction (the √(π ln2) the entropy of the one
fillable Majorana zero mode per paired vortex), frozen across the 3×3 = 9
chirality-bearing interfaces of a three-quark baryon: η_B = ε_χ⁹ = 5.8e-10
against the observed (6.1 ± 0.04)e-10. The exponent 9 is a *bet*, not derived.
"""
eps = math.sqrt(math.pi * math.log(2.0)) / K_struct()
eta_B = eps ** 9
return {
'label': 'Baryon asymmetry η_B',
'expression': 'ε_χ⁹, ε_χ=√(π ln2)/K',
'eps_chi': eps,
'predicted': eta_B,
'observed': ETA_B_OBS,
'disc': 100.0 * (eta_B - ETA_B_OBS) / ETA_B_OBS,
}
# ══════════════════════════════════════════════════════════════════════════
# Prediction 10 — the lightest neutrino mass and the sum (live)
# ══════════════════════════════════════════════════════════════════════════
def neutrino_masses() -> dict:
"""Neutrino masses: m_ν,1 = m_eff/ν = m₁ ≈ 2 meV, normal ordering (^t2-neutrino).
bridge-paper.qmd §sec-live. The neutrino is the barest knot, so it sits at
the floor of the ladder, α_mf^eff = 1/ν, forcing m_ν,1 = m_eff/ν = m₁ — the
one fermion mass placed with no new parameter. Folding in the measured
splittings gives m_ν ≈ {2, 8.9, 50} meV and Σ ≈ 61 meV; inverted ordering
would give ~102 meV, above the DESI+CMB ceiling, so normal ordering is forced.
"""
m1_meV = m1_dc1() * C**2 / EV * 1e3 # = m_eff/ν, the floor
m_nu = [m1_meV,
math.sqrt(m1_meV**2 + DM21_MEV**2),
math.sqrt(m1_meV**2 + DM31_MEV**2)]
# Inverted ordering: the lightest state sits at the same floor, but the two
# heavy near-degenerate states both sit at ~√Δm²_31, so Σ ≈ m₁ + 2√(m₁²+Δm²_31).
Sigma_inv = m1_meV + 2.0 * math.sqrt(m1_meV**2 + DM31_MEV**2)
return {
'm_nu': m_nu,
'sum_normal': sum(m_nu),
'sum_inverted': Sigma_inv,
'm1_floor': m1_meV,
}
# ══════════════════════════════════════════════════════════════════════════
# The shape of the lattice — vertical geometry and the two macroscopic scales
# ══════════════════════════════════════════════════════════════════════════
def gjo_period() -> dict:
"""Vertical period: d_GJO = ξ √(ln2/(8π)) = 0.166 ξ ≈ 16 μm (@eq-dgjo).
bridge-paper.qmd §sec-sheets. The Glaberson–Johnson–Ostermeier instability
of the vortex lines threading the sheet stack selects one wavelength; two
standard classical-fluid inputs (Feynman's Ω, Saffman's line tension) close it
with the short-distance cutoff ξ_GP = ξ/√2, so ln(ξ/ξ_GP) = ½ln2 and
d_GJO = ξ√(ln2/8π). Like-handed sheets repeat at ~16 μm, a counter-rotating
boundary falls at the half-period ~8 μm — the substrate's octave.
"""
xi = xi_SC2()
d = xi * math.sqrt(math.log(2.0) / (8.0 * math.pi))
return {
'ratio': d / xi, # 0.166
'd_gjo_um': d * 1e6, # ~16 μm
'half_um': d / 2.0 * 1e6, # ~8 μm boundary octave
}
def baym_gap() -> dict:
"""Structural gap: gravitational (4π) vs elastic (8π) core, ratio 2^(1/24)(4π/K)^(1/4).
bridge-paper.qmd §sec-four-factors, footnote ^eq-gap. A convincing check: had
SC2 used Baym's lattice-elastic 8π (Tkachenko shear wave) instead of the
gravitational 4π, the core would be 76.9 μm versus the GP value 79.0 μm — a
2.7% difference the bridge equation predicts to 0.04% as the fixed ratio
2^(1/24)(4π/K)^(1/4) = 0.9739 (the GR factor 2^(1/3) lifting the gravitational
core above the elastic one). Both are core (healing-length) scales.
"""
K = K_struct()
core_gp = xi_CP(rho_DM()) / math.sqrt(2.0) # 79.0 μm = ξ_CP/√2
core_baym = (HBAR * K / (4.0 * m_eff() * C)) ** (1.0 / 3.0) # 76.9 μm
ratio = core_baym / core_gp
pred = 2.0 ** (1.0 / 24.0) * (4.0 * math.pi / K) ** 0.25
return {
'core_gp_um': core_gp * 1e6,
'core_baym_um': core_baym * 1e6,
'ratio': ratio,
'ratio_pred': pred,
}
def coherence_ceiling() -> dict:
"""Second macroscopic scale (a null): ℓ_L = (ν/4π)^(1/3) ξ = (c/v_L) ξ ≈ 3.9 cm (^t2-reachnull).
bridge-paper.qmd §sec-live. Read as a length, the condensation number ν sets
an upper bound — the coherence envelope of the substrate's softest structured
mode, ℓ_L = (ν/4π)^(1/3) ξ ≈ 400 ξ ≈ 3.9 cm (ℏω₀ ≈ 5 μeV, ω₀ = c/ℓ_L). Unlike
a spectral line this is a *smoothness ceiling* — buried thermally, by overlap,
and by f_cross ~ 1e-15 — so it promises no signal, the opposite of a numerology
hit. It is the same v_L = c(4π/ν)^(1/3) as the Landau velocity, read as a length.
"""
xi = xi_SC2()
nu = condensation_number()
ell_L = (nu / (4.0 * math.pi)) ** (1.0 / 3.0) * xi
omega0 = C / ell_L
hbar_omega0_ueV = HBAR * omega0 / EV * 1e6
T_omega0_mK = HBAR * omega0 / KB * 1e3
return {
'ell_L_cm': ell_L * 100.0,
'ratio_to_cell': ell_L / xi, # ~400 = c/v_L
'hbar_omega0_ueV': hbar_omega0_ueV, # ~5 μeV
'T_omega0_mK': T_omega0_mK, # ~60 mK
}
def coherence_lifetime_ladder() -> dict:
"""Coherence-lifetime ladder: τ_N/τ_0 = (1/α_mf)^N, rungs spaced ln(1/α_mf) ≈ 1.20 (^t2-coherence).
bridge-paper.qmd §sec-live. A balanced wrapping shell re-catches all but the
dissipative fraction α_mf of whatever leaks through it, so coherence lifetime
climbs geometrically per shell: the per-shell factor is 1/α_mf ≈ 3.32 and the
log-lifetime rung spacing is ln(1/α_mf) ≈ 1.20 — the substrate ladder's √2
size-comb run on the time axis instead.
"""
a_mf = alpha_mf()
return {
'per_shell': 1.0 / a_mf, # 3.32
'log_spacing': math.log(1.0 / a_mf), # 1.20
}
# ══════════════════════════════════════════════════════════════════════════
# Report
# ══════════════════════════════════════════════════════════════════════════
def main() -> None:
line = '═' * 78
print(line)
print(' SUBSTRATE — ATOMIC / PARTICLE-PHYSICS BACKBONE PREDICTIONS')
print(' reproducing arxiv/bridge-paper.qmd §sec-tier1a/1b, §sec-tier2, §sec-live')
print(line)
# --- shared intermediate quantities ------------------------------------
a_mf = alpha_mf()
K = K_struct()
print('\n Shared substrate quantities')
print(' ' + '-' * 44)
print(f' sin²θ_W = {SIN2_THETA_W:.5f} (PDG)')
print(f' α_mf = tan²θ_W = {a_mf:.4f} (§sec-hbar, ^eq-amf)')
print(f' j₁₁ (first zero of J₁) = {J11:.4f}')
print(f' K = j₁₁² + 1 = {K:.4f} (@eq-K)')
print(f' m_eff c² = m_e c²/α_mf = {m_eff()*C**2/EV/1e6:.3f} MeV (@eq-mass)')
print(f' ξ_SC2 (electroweak) = {xi_SC2()*1e6:.1f} μm (@eq-route2)')
print(f' ξ_CP (cosmology) = {xi_CP(rho_DM())*1e6:.1f} μm (@eq-route1)')
print(f' ρ_DM (Planck Ω_c h²) = {rho_DM():.3e} kg/m³ (^rhodm)')
print(f' ν = m_eff/m₁ = {condensation_number():.2e} (@eq-nu)')
sc2 = sc2_identity()
print(f' SC2: κ_q Ω_v = 4π c² = {"OK" if sc2["match"] else "FAIL":<8}'
f' m_eff cancels (@eq-sc2); ξ_SC2 forms agree: '
f'{"OK" if sc2["xi_forms_match"] else "FAIL"}')
# --- Tier 1a — backbone prediction table --------------------------------
results = [packing_fraction(), higgs_vev(), fine_structure(), koide()]
print('\n Tier 1a — backbone predictions (§sec-tier1a)')
print(' ' + '-' * 74)
hdr = f' {"Quantity":<24}{"Expression":<21}{"Predicted":>11}{"Observed":>12}{"Disc.":>9}'
print(hdr)
print(' ' + '-' * 74)
for r in results:
print(f' {r["label"]:<24}{r["expression"]:<21}'
f'{r["pred_str"]:>11}{r["obs_str"]:>12}{r["disc_str"]:>9}')
# Minimum localized-modon energy (the infrared floor / crossover).
fl = min_modon_energy()
fl_nu = f'{fl["nu_THz"]:.1f} THz'
print(f' {"Min localized modon":<24}{"hc/ξ = 2π m₁c²":<21}'
f'{fl["E_min_meV"]:>8.2f} meV{"crossover":>12}{fl_nu:>9}')
# --- Tier 1b — helix locks (packing fraction f as a chiral projection) ---
dna = dna_bp_per_turn()
mt = microtubule_wall()
lep = lepton_ratios()
print('\n Tier 1b — predictions with an open factor (§sec-tier1b)')
print(' ' + '-' * 74)
print(hdr)
print(' ' + '-' * 74)
mu_d = f'{lep["mu_disc"]:+.3f}%'
tau_d = f'{lep["tau_disc"]:+.3f}%'
dna_d = f'{dna["disc"]:+.1f}%'
mt_d = f'{mt["disc"]:+.1f}%'
print(f' {"m_μ/m_e (δ=2/9 rad)":<24}{"(1+√2 cosθ_k)²":<21}'
f'{lep["mu_e"]:>11.3f}{lep["mu_e_obs"]:>12.3f}{mu_d:>9}')
print(f' {"m_τ/m_e (δ=2/9 rad)":<24}{"(1+√2 cosθ_k)²":<21}'
f'{lep["tau_e"]:>11.1f}{lep["tau_e_obs"]:>12.1f}{tau_d:>9}')
print(f' {dna["label"]:<24}{dna["expression"]:<21}'
f'{dna["predicted"]:>11.2f}{dna["observed"]:>12.1f}{dna_d:>9}')
print(f' {mt["label"]:<24}{mt["expression"]:<21}'
f'{mt["predicted"]:>11.3f}{mt["observed"]:>12.3f}{mt_d:>9}')
# --- Tier 2 — clean electroweak / cosmological numerics ------------------
wz = weinberg_wz()
g2 = anomalous_moment()
eta = baryon_asymmetry()
print('\n Tier 2 — physics re-derived (clean numerics) (§sec-tier2)')
print(' ' + '-' * 74)
print(hdr)
print(' ' + '-' * 74)
wz_d = f'{wz["disc"]:+.1f}%'
eta_p = f'{eta["predicted"]:.2e}'
eta_o = f'{eta["observed"]:.2e}'
eta_d = f'{eta["disc"]:+.0f}%'
print(f' {wz["label"]:<24}{wz["expression"]:<21}'
f'{wz["predicted"]:>11.4f}{wz["observed"]:>12.4f}{wz_d:>9}')
print(f' {g2["label"]:<24}{g2["expression"]:<21}'
f'{g2["predicted"]:>11.6f}{g2["observed"]:>12.6f}{"tree":>9}')
print(f' {eta["label"]:<24}{eta["expression"]:<21}'
f'{eta_p:>11}{eta_o:>12}{eta_d:>9}')
print(f' (ε_χ = √(π ln2)/K = {eta["eps_chi"]:.4f}, frozen across 3×3=9 interfaces)')
# --- Live predictions — neutrino masses ---------------------------------
nu_m = neutrino_masses()
print('\n Live predictions — testable now (§sec-live)')
print(' ' + '-' * 74)
print(f' Lightest ν mass m_ν,1 = m_eff/ν = m₁ = {nu_m["m1_floor"]:.1f} meV'
f' (^t2-neutrino)')
print(f' Normal ordering m_ν = '
f'{{{nu_m["m_nu"][0]:.1f}, {nu_m["m_nu"][1]:.1f}, {nu_m["m_nu"][2]:.1f}}} meV,'
f' Σm_ν = {nu_m["sum_normal"]:.1f} meV (DESI+CMB ≲70)')
print(f' Inverted ordering would give Σ ≈ {nu_m["sum_inverted"]:.0f} meV'
f' → forbidden, so normal ordering is forced')
# --- The shape of the lattice — vertical geometry & macroscopic scales ---
gjo = gjo_period()
bg = baym_gap()
cc = coherence_ceiling()
cl = coherence_lifetime_ladder()
print('\n The shape of the lattice (§sec-sheets, §sec-live)')
print(' ' + '-' * 74)
print(f' GJO vertical period d_GJO = {gjo["ratio"]:.3f} ξ = '
f'{gjo["d_gjo_um"]:.1f} μm (octave {gjo["half_um"]:.0f}/{gjo["d_gjo_um"]:.0f} μm) (@eq-dgjo)')
print(f' Baym 8π structural gap: core 4π = {bg["core_gp_um"]:.1f} μm vs '
f'8π = {bg["core_baym_um"]:.1f} μm')
print(f' ratio {bg["ratio"]:.4f} vs predicted 2^(1/24)(4π/K)^¼ = '
f'{bg["ratio_pred"]:.4f} (^eq-gap)')
print(f' Coherence ceiling ℓ_L = (ν/4π)^⅓ ξ = {cc["ell_L_cm"]:.2f} cm '
f'(≈{cc["ratio_to_cell"]:.0f} ξ, ℏω₀ = {cc["hbar_omega0_ueV"]:.1f} μeV,'
f' {cc["T_omega0_mK"]:.0f} mK) (^t2-reachnull)')
print(f' Coherence-lifetime ladder: τ_N/τ_0 = (1/α_mf)^N, '
f'1/α_mf = {cl["per_shell"]:.2f}, rung ln = {cl["log_spacing"]:.2f} (^t2-coherence)')
print(line)
if __name__ == '__main__':
main()