Encyclopedia Nuclear Nuclear Binding Energy Nuclear Binding Cert Exists
ARTICLE 4 claims 2 theorems 2 models
Nuclear Binding Energy Nuclear Binding Cert Exists
A machine-checked certificate bundles seven small facts about nuclear magic numbers and binding coefficients, but it does not prove a full binding-energy formula.
The certificate's reach
Nuclear binding energy is the energy that holds a nucleus together, and it varies with the number of protons and neutrons. The semi-empirical mass formula, developed in the 1930s by Carl Friedrich von Weizsäcker, approximates this energy with terms for volume, surface, Coulomb repulsion, asymmetry, and pairing. The standard curve of binding energy per nucleon rises to a peak near iron-56 and then falls, which is why iron is the most stable common nucleus.
In Recognition Science, the ledger, a discrete record of recognition events, structures a framework where the golden ratio φ appears as a fundamental scale. The machine-checked library of formal theorems contains a module that models nuclear binding using this framework. The declaration nuclear_binding_cert_exists establishes that a certificate exists: a bundle of seven specific facts, each established by direct computation. These facts are that the list of magic numbers has length seven, the list is sorted, the number 8 equals 2³, the number 20 equals 2³ + 3·2², and the three main binding coefficients are positive.
The certificate also includes a definition of binding energy that mirrors the Weizsäcker form, with coefficients expressed as powers of φ. The module defines these coefficients, for example a volume coefficient of φ³·1.05, and shows that the volume term dominates the surface term for any nucleus with at least one nucleon. It defines a peak region for mass numbers 50 through 70 and shows that iron-56, with 26 protons and 30 neutrons, lies in that region. It also shows that 56 is an octave multiple, 7 times 8, and that 56 divided by φ⁸ lies between 1 and 1.2.
What the certificate does not do is as important as what it does. It does not show that the φ-based coefficients reproduce measured binding energies; the values are a definitional choice, not a derived result. The certificate does not show that the magic numbers follow from the framework's eight-tick cycle; it merely asserts the list and proves elementary arithmetic about it. The certificate does not show that the binding-energy formula is unique or that it matches experiment; those remain targets for empirical comparison, not theorems.
The practical consequence is a compact, machine-checked statement of what the framework's nuclear model currently establishes. A reader can verify the seven facts and the peak-region arithmetic without trusting any unstated assumption. The certificate is a checkpoint, not a finished theory.
THEOREM nuclear_binding_cert_exists · IndisputableMonolith/Nuclear/BindingEnergy.lean
theorem nuclear_binding_cert_exists : Nonempty NuclearBindingCert :=
⟨{ seven_magic := magic_numbers_count
magic_sorted := magic_numbers_sorted
eight_from_cube := magic_8_from_cube
twenty_from_cube := magic_20_from_cube
coefficients_positive := ⟨rs_binding_coefficients.h_V_pos,
rs_binding_coefficients.h_S_pos, rs_binding_coefficients.h_C_pos⟩ }⟩
MODEL binding_energy · IndisputableMonolith/Nuclear/BindingEnergy.lean
noncomputable def binding_energy (coeff : BindingCoefficients) (A Z : ℕ) : ℝ :=
let N := A - Z
coeff.a_V * A - coeff.a_S * (A : ℝ) ^ ((2:ℝ)/3) -
coeff.a_C * Z * (Z - 1) / (A : ℝ) ^ ((1:ℝ)/3) -
coeff.a_A * ((N : ℝ) - Z) ^ 2 / (4 * A)
THEOREM iron_octave_multiple · iron_peak_near_phi8 · IndisputableMonolith/Nuclear/BindingEnergy.lean
/-- Iron-56 is 7 × 8 (octave multiple). -/
theorem iron_octave_multiple : iron56_A = 7 * 8 := by decide
/-- The iron peak mass number is close to φ⁸: 56/φ⁸ ∈ (1, 1.2). -/
theorem iron_peak_near_phi8 :
(iron56_A : ℝ) / phi_eighth > 1 ∧ (iron56_A : ℝ) / phi_eighth < 1.2 := by
have hp8_pos : phi_eighth > 0 := by
unfold phi_eighth
exact pow_pos Constants.phi_pos 8
have hphi_lt : Constants.phi < 1.62 := Constants.phi_lt_onePointSixTwo
have hphi_nonneg : (0 : ℝ) ≤ Constants.phi := le_of_lt Constants.phi_pos
have hp8_lt : phi_eighth < 1.62 ^ 8 := by
unfold phi_eighth
exact pow_lt_pow_left₀ hphi_lt hphi_nonneg (by norm_num : 8 ≠ 0)
have h162_8 : (1.62 : ℝ) ^ 8 < 56 := by norm_num
have hp8_lt_56 : phi_eighth < 56 := lt_trans hp8_lt h162_8
constructor
· -- 56 / φ⁸ > 1 iff 56 > φ⁸
simp only [iron56_A]
have h : (56 : ℝ) > phi_eighth * 1 := by linarith
calc (56 : ℝ) / phi_eighth > phi_eighth * 1 / phi_eighth := by
apply div_lt_div_of_pos_right h hp8_pos
_ = 1 := by field_simp
· -- 56 / φ⁸ < 1.2 requires φ⁸ > 46.67; use φ > 1.617 ⇒ φ⁸ > 47.4
simp only [iron56_A]
have hphi_gt : Constants.phi > 1.617 := by
simp only [Constants.phi]
have h5 : Real.sqrt 5 > 2.234 := by
have h_sq : (2.234 : ℝ)^2 < 5 := by norm_num
have h_pos : (0 : ℝ) ≤ 2.234 := by norm_num
exact (Real.lt_sqrt h_pos).mpr h_sq
linarith
have h1617_8 : (1.617 : ℝ) ^ 8 > 46.67 := by norm_num
have hp8_gt : phi_eighth > 46.67 := by
unfold phi_eighth
calc Constants.phi ^ 8 > (1.617 : ℝ) ^ 8 := by
exact pow_lt_pow_left₀ hphi_gt (by norm_num) (by norm_num)
_ > 46.67 := h1617_8
have h56_lt : (56 : ℝ) < 1.2 * phi_eighth := by
have h56 : (56 : ℝ) < 1.2 * 46.67 := by norm_num
linarith
calc (56 : ℝ) / phi_eighth < 1.2 * phi_eighth / phi_eighth := by
apply div_lt_div_of_pos_right h56_lt hp8_pos
_ = 1.2 := by field_simp
MODEL rs_binding_coefficients · IndisputableMonolith/Nuclear/BindingEnergy.lean
noncomputable def rs_binding_coefficients : BindingCoefficients where
a_V := phi ^ 3 * 1.05
a_S := phi ^ 3 * 0.77
a_C := phi * 0.44
a_A := phi ^ 3 * 1.55
a_P := phi ^ 2 * 4.5
h_V_pos := mul_pos (pow_pos phi_pos 3) (by norm_num)
h_S_pos := mul_pos (pow_pos phi_pos 3) (by norm_num)
h_C_pos := mul_pos phi_pos (by norm_num)
h_A_pos := mul_pos (pow_pos phi_pos 3) (by norm_num)
h_P_pos := mul_pos (pow_pos phi_pos 2) (by norm_num)
What this page does not claim
The certificate does not show that the φ-based coefficients match measured binding energies. The certificate does not derive the magic numbers from the eight-tick cycle; it only asserts the list. The certificate does not show that the binding-energy formula is unique or that it predicts the iron peak.
Verify this page
Every tagged claim above names its theorem. To check one yourself rather than trust this page, elaborate the source module with Lean 4 and audit its axiom basis:
$ lake env lean IndisputableMonolith/Nuclear/BindingEnergy.lean
expected axiom basis: [propext, Classical.choice, Quot.sound] (the Lean kernel's standard three; no RS-specific axioms)
A page whose claims cannot be reproduced this way does not ship. In production, every anchor links to the exact declaration in the public source release, and this block carries the build receipt for the page itself.
Derived articles
This page is generated by a question-recursion engine: the questions its answers raise become the next pages. The current agenda, with open targets marked red:
- Can the φ-based binding coefficients be fitted to measured binding energies across the nuclide chart?
- Do the magic numbers 50, 82, and 126 follow from the eight-tick cycle, or only from the list?
- What regularity condition on the cost functional selects the Weizsäcker-like form of the binding energy?
- Does the iron peak at A = 56 emerge from the framework's dynamics, or is it an input to the model?
MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND
THEOREM nuclear_binding_cert_exists · IndisputableMonolith/Nuclear/BindingEnergy.lean
theorem nuclear_binding_cert_exists : Nonempty NuclearBindingCert := ⟨{ seven_magic := magic_numbers_count magic_sorted := magic_numbers_sorted eight_from_cube := magic_8_from_cube twenty_from_cube := magic_20_from_cube coefficients_positive := ⟨rs_binding_coefficients.h_V_pos, rs_binding_coefficients.h_S_pos, rs_binding_coefficients.h_C_pos⟩ }⟩The declaration nuclear_binding_cert_exists establishes that a certificate exists: a bundle of seven specific facts, each established by direct computation. nuclear_binding_cert_exists · IndisputableMonolith/Nuclear/BindingEnergy.leanMODEL binding_energy · IndisputableMonolith/Nuclear/BindingEnergy.lean
noncomputable def binding_energy (coeff : BindingCoefficients) (A Z : ℕ) : ℝ := let N := A - Z coeff.a_V * A - coeff.a_S * (A : ℝ) ^ ((2:ℝ)/3) - coeff.a_C * Z * (Z - 1) / (A : ℝ) ^ ((1:ℝ)/3) - coeff.a_A * ((N : ℝ) - Z) ^ 2 / (4 * A)The certificate also includes a definition of binding energy that mirrors the Weizsäcker form, with coefficients expressed as powers of φ. binding_energy · IndisputableMonolith/Nuclear/BindingEnergy.leanTHEOREM iron_octave_multiple · iron_peak_near_phi8 · IndisputableMonolith/Nuclear/BindingEnergy.lean
/-- Iron-56 is 7 × 8 (octave multiple). -/ theorem iron_octave_multiple : iron56_A = 7 * 8 := by decide/-- The iron peak mass number is close to φ⁸: 56/φ⁸ ∈ (1, 1.2). -/ theorem iron_peak_near_phi8 : (iron56_A : ℝ) / phi_eighth > 1 ∧ (iron56_A : ℝ) / phi_eighth < 1.2 := by have hp8_pos : phi_eighth > 0 := by unfold phi_eighth exact pow_pos Constants.phi_pos 8 have hphi_lt : Constants.phi < 1.62 := Constants.phi_lt_onePointSixTwo have hphi_nonneg : (0 : ℝ) ≤ Constants.phi := le_of_lt Constants.phi_pos have hp8_lt : phi_eighth < 1.62 ^ 8 := by unfold phi_eighth exact pow_lt_pow_left₀ hphi_lt hphi_nonneg (by norm_num : 8 ≠ 0) have h162_8 : (1.62 : ℝ) ^ 8 < 56 := by norm_num have hp8_lt_56 : phi_eighth < 56 := lt_trans hp8_lt h162_8 constructor · -- 56 / φ⁸ > 1 iff 56 > φ⁸ simp only [iron56_A] have h : (56 : ℝ) > phi_eighth * 1 := by linarith calc (56 : ℝ) / phi_eighth > phi_eighth * 1 / phi_eighth := by apply div_lt_div_of_pos_right h hp8_pos _ = 1 := by field_simp · -- 56 / φ⁸ < 1.2 requires φ⁸ > 46.67; use φ > 1.617 ⇒ φ⁸ > 47.4 simp only [iron56_A] have hphi_gt : Constants.phi > 1.617 := by simp only [Constants.phi] have h5 : Real.sqrt 5 > 2.234 := by have h_sq : (2.234 : ℝ)^2 < 5 := by norm_num have h_pos : (0 : ℝ) ≤ 2.234 := by norm_num exact (Real.lt_sqrt h_pos).mpr h_sq linarith have h1617_8 : (1.617 : ℝ) ^ 8 > 46.67 := by norm_num have hp8_gt : phi_eighth > 46.67 := by unfold phi_eighth calc Constants.phi ^ 8 > (1.617 : ℝ) ^ 8 := by exact pow_lt_pow_left₀ hphi_gt (by norm_num) (by norm_num) _ > 46.67 := h1617_8 have h56_lt : (56 : ℝ) < 1.2 * phi_eighth := by have h56 : (56 : ℝ) < 1.2 * 46.67 := by norm_num linarith calc (56 : ℝ) / phi_eighth < 1.2 * phi_eighth / phi_eighth := by apply div_lt_div_of_pos_right h56_lt hp8_pos _ = 1.2 := by field_simpIt also shows that 56 is an octave multiple, 7 times 8, and that 56 divided by φ⁸ lies between 1 and 1.2. iron_octave_multiple · iron_peak_near_phi8 · IndisputableMonolith/Nuclear/BindingEnergy.leanMODEL rs_binding_coefficients · IndisputableMonolith/Nuclear/BindingEnergy.lean
noncomputable def rs_binding_coefficients : BindingCoefficients where a_V := phi ^ 3 * 1.05 a_S := phi ^ 3 * 0.77 a_C := phi * 0.44 a_A := phi ^ 3 * 1.55 a_P := phi ^ 2 * 4.5 h_V_pos := mul_pos (pow_pos phi_pos 3) (by norm_num) h_S_pos := mul_pos (pow_pos phi_pos 3) (by norm_num) h_C_pos := mul_pos phi_pos (by norm_num) h_A_pos := mul_pos (pow_pos phi_pos 3) (by norm_num) h_P_pos := mul_pos (pow_pos phi_pos 2) (by norm_num)It does not show that the φ-based coefficients reproduce measured binding energies; the values are a definitional choice, not a derived result. rs_binding_coefficients · IndisputableMonolith/Nuclear/BindingEnergy.lean