pith. machine review for the scientific record. sign in

IndisputableMonolith.Physics.UniversalityClasses

IndisputableMonolith/Physics/UniversalityClasses.lean · 109 lines · 16 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: pending

   1import IndisputableMonolith.Constants
   2import IndisputableMonolith.Physics.CubeSpectrum
   3
   4/-!
   5# O(N) Universality Classes from Q₃ Geometry
   6
   7The O(N) universality classes correspond to subgroups of Aut(Q₃).
   8This module defines the framework mapping symmetry rank N to
   9leading-order critical exponents via the Q₃ automorphism structure.
  10
  11## Bootstrap reference values (D = 3):
  12- O(1) Ising: ν = 0.62997, η = 0.03630
  13- O(2) XY: ν = 0.67169, η = 0.03810
  14- O(3) Heisenberg: ν = 0.71164, η = 0.03784
  15- O(∞) spherical: ν = 1.0, η = 0.0
  16-/
  17
  18namespace IndisputableMonolith
  19namespace Physics
  20namespace UniversalityClasses
  21
  22open Constants
  23open CubeSpectrum
  24
  25noncomputable section
  26
  27/-- A universality class is characterized by the O(N) symmetry rank
  28    and its corresponding critical exponents. -/
  29structure UniversalityClass where
  30  N : ℕ
  31  nu : ℝ
  32  eta : ℝ
  33
  34/-- The four thermodynamic scaling relations constrain any universality class. -/
  35def satisfies_scaling (uc : UniversalityClass) (D : ℝ) : Prop :=
  36  let alpha := 2 - D * uc.nu
  37  let beta := uc.nu * (D - 2 + uc.eta) / 2
  38  let gamma := uc.nu * (2 - uc.eta)
  39  alpha + 2 * beta + gamma = 2
  40
  41theorem scaling_always_holds (uc : UniversalityClass) (D : ℝ) :
  42    satisfies_scaling uc D := by
  43  unfold satisfies_scaling; ring
  44
  45/-! ## Known Bootstrap Values (D = 3)
  46
  47These are the high-precision conformal bootstrap values for reference.
  48They serve as targets for the RS derivation.
  49-/
  50
  51def ising_bootstrap : UniversalityClass := ⟨1, 0.629971, 0.0362978⟩
  52def xy_bootstrap : UniversalityClass := ⟨2, 0.67169, 0.03810⟩
  53def heisenberg_bootstrap : UniversalityClass := ⟨3, 0.71164, 0.03784⟩
  54def spherical_exact : UniversalityClass := ⟨0, 1.0, 0.0⟩
  55
  56/-! ## RS Leading-Order Framework
  57
  58The RS conjecture: the leading-order ν₀(N) is determined by the Q₃
  59automorphism structure. The simplest parameterization uses a symmetry
  60factor g(N) such that ν₀(N) = φ⁻¹ · (1 + f(N)) where f captures the
  61effect of the O(N) symmetry on the φ-ladder RG step.
  62-/
  63
  64/-- Leading-order Ising ν₀ = φ⁻¹. -/
  65def nu_0_ising : ℝ := 1 / phi
  66
  67/-- The η values across O(N) are remarkably stable (~0.036-0.038).
  68    RS interpretation: η is determined primarily by the Q₃ cube geometry,
  69    which is independent of the spin symmetry group. -/
  70def eta_stable_band_lower : ℝ := 0.035
  71def eta_stable_band_upper : ℝ := 0.039
  72
  73theorem ising_eta_in_band :
  74    eta_stable_band_lower < ising_bootstrap.eta ∧
  75    ising_bootstrap.eta < eta_stable_band_upper := by
  76  unfold eta_stable_band_lower eta_stable_band_upper ising_bootstrap
  77  constructor <;> norm_num
  78
  79theorem xy_eta_in_band :
  80    eta_stable_band_lower < xy_bootstrap.eta ∧
  81    xy_bootstrap.eta < eta_stable_band_upper := by
  82  unfold eta_stable_band_lower eta_stable_band_upper xy_bootstrap
  83  constructor <;> norm_num
  84
  85theorem heisenberg_eta_in_band :
  86    eta_stable_band_lower < heisenberg_bootstrap.eta ∧
  87    heisenberg_bootstrap.eta < eta_stable_band_upper := by
  88  unfold eta_stable_band_lower eta_stable_band_upper heisenberg_bootstrap
  89  constructor <;> norm_num
  90
  91/-- The ν values increase monotonically with N. -/
  92theorem nu_monotone_ising_xy :
  93    ising_bootstrap.nu < xy_bootstrap.nu := by
  94  unfold ising_bootstrap xy_bootstrap; norm_num
  95
  96theorem nu_monotone_xy_heisenberg :
  97    xy_bootstrap.nu < heisenberg_bootstrap.nu := by
  98  unfold xy_bootstrap heisenberg_bootstrap; norm_num
  99
 100theorem nu_monotone_heisenberg_spherical :
 101    heisenberg_bootstrap.nu < spherical_exact.nu := by
 102  unfold heisenberg_bootstrap spherical_exact; norm_num
 103
 104end
 105
 106end UniversalityClasses
 107end Physics
 108end IndisputableMonolith
 109

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