Pith. sign in

IndisputableMonolith.Verification.Exclusivity.DimensionlessForcing

IndisputableMonolith/Verification/Exclusivity/DimensionlessForcing.lean · 100 lines · 7 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: ready · generated 2026-08-13 12:56:44.906415+00:00

   1/-
   2  DimensionlessForcing.lean — Bridge B3
   3
   4  Proves: in a genuinely zero-parameter framework, observables must be
   5  dimensionless, and if the ledger conserves a single quantity, the observable
   6  interface factors through a single positive real ratio.
   7
   8  Sub-claims:
   9  1. Dimensionlessness: zero parameters ⟹ no independent dimensionful constants
  10  2. One-dimensionality: single-channel conservation ⟹ ratio extraction R₊
  11  3. Positivity: cost symmetry J(x) = J(1/x) forces domain R₊
  12-/
  13
  14import Mathlib
  15import IndisputableMonolith.Verification.Exclusivity.Framework
  16import IndisputableMonolith.Verification.Exclusivity.ParameterSurface
  17
  18namespace IndisputableMonolith.Verification.Exclusivity
  19
  20open Framework
  21open HasParameterRecord
  22
  23/-- A dimension system assigns dimensions to framework observables. -/
  24structure DimensionSystem (F : PhysicsFramework) where
  25  Dimension : Type
  26  dim_of : F.Observable → Dimension
  27  dimensionless : Dimension
  28  is_dimensionless : F.Observable → Prop := fun o => dim_of o = dimensionless
  29
  30/-- A framework has dimensionless observables if all observables are dimensionless. -/
  31def HasDimensionlessObservables (F : PhysicsFramework) (D : DimensionSystem F) : Prop :=
  32  ∀ o : F.Observable, D.is_dimensionless o
  33
  34/-- Strong zero-parameter posture forces dimensionless observables.
  35
  36    The proof uses the non-vacuous parameter-record formalization:
  37    if a dimensionful observable existed, it would induce a genuine real-valued
  38    knob in the framework. That contradicts the theorem
  39    `zero_params_excludes_real_knob`. -/
  40theorem zero_params_forces_dimensionless (F : PhysicsFramework)
  41    [HasParameterRecord F]
  42    (hZero : HasZeroParameters_Strong F)
  43    (D : DimensionSystem F)
  44    (h_dimensionful_forces_knob :
  45      ∀ o, ¬ D.is_dimensionless o → HasFreeRealKnob F) :
  46    HasDimensionlessObservables F D := by
  47  intro o
  48  by_contra h
  49  exact zero_params_excludes_real_knob F hZero (h_dimensionful_forces_knob o h)
  50
  51/-- Single-channel conservation: the ledger has exactly one independent
  52    conserved quantity. -/
  53structure SingleChannelConservation (F : PhysicsFramework) where
  54  conserved_quantity : F.StateSpace → ℝ
  55  reference_state : F.StateSpace
  56  reference_pos : 0 < conserved_quantity reference_state
  57  conservation : ∀ s, conserved_quantity (F.evolve s) = conserved_quantity s
  58
  59/-- Ratio extraction from single-channel conservation. -/
  60noncomputable def ratio_from_conservation {F : PhysicsFramework}
  61    (C : SingleChannelConservation F) (s : F.StateSpace) : ℝ :=
  62  C.conserved_quantity s / C.conserved_quantity C.reference_state
  63
  64/-- The extracted ratio is positive when the conserved quantity is positive. -/
  65theorem ratio_pos_of_conservation {F : PhysicsFramework}
  66    (C : SingleChannelConservation F)
  67    (h_all_pos : ∀ s, 0 < C.conserved_quantity s)
  68    (s : F.StateSpace) :
  69    0 < ratio_from_conservation C s := by
  70  unfold ratio_from_conservation
  71  exact div_pos (h_all_pos s) C.reference_pos
  72
  73/-- Bridge B3: strong zero parameters plus single-channel conservation force a
  74    dimensionless positive ratio interface.
  75
  76    The observable interface factors through r : S → R₊ when:
  77    1. The framework has no free real knobs (dimensionless observables)
  78    2. The ledger conserves a single quantity (one-dimensional ratio) -/
  79theorem bridge_B3_single_channel_forces_ratio (F : PhysicsFramework)
  80    [HasParameterRecord F]
  81    (hZero : HasZeroParameters_Strong F)
  82    (D : DimensionSystem F)
  83    (h_dimensionful_forces_knob :
  84      ∀ o, ¬ D.is_dimensionless o → HasFreeRealKnob F)
  85    (C : SingleChannelConservation F)
  86    (h_all_pos : ∀ s, 0 < C.conserved_quantity s)
  87    (h_obs_determined : ∀ s₁ s₂,
  88      ratio_from_conservation C s₁ = ratio_from_conservation C s₂ →
  89      F.measure s₁ = F.measure s₂) :
  90    HasDimensionlessObservables F D ∧
  91      ∃ (r : F.StateSpace → ℝ),
  92        (∀ s, 0 < r s) ∧
  93        (∀ s₁ s₂, r s₁ = r s₂ → F.measure s₁ = F.measure s₂) := by
  94  refine ⟨zero_params_forces_dimensionless F hZero D h_dimensionful_forces_knob, ?_⟩
  95  exact ⟨ratio_from_conservation C,
  96    ratio_pos_of_conservation C h_all_pos,
  97    h_obs_determined⟩
  98
  99end IndisputableMonolith.Verification.Exclusivity
 100

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