pith. machine review for the scientific record. sign in

IndisputableMonolith.RRF.Models.Trivial

IndisputableMonolith/RRF/Models/Trivial.lean · 93 lines · 15 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: pending

   1import IndisputableMonolith.RRF.Core
   2
   3/-!
   4# RRF Models: Trivial Model
   5
   6The simplest possible model that satisfies RRF axioms.
   7
   8State = Unit (one state)
   9J = 0 (always balanced)
  10Ledger = 0/0 (trivially closed)
  11
  12This proves internal consistency of the core axiom bundle.
  13-/
  14
  15
  16namespace IndisputableMonolith
  17namespace RRF.Models
  18
  19open RRF.Core
  20
  21/-! ## The Trivial Model -/
  22
  23/-- Trivial state space: a single point. -/
  24abbrev TrivialState := Unit
  25
  26/-- Trivial strain: always zero. -/
  27def trivialStrain : StrainFunctional TrivialState where
  28  J := fun _ => 0
  29
  30instance : StrainFunctional.NonNeg trivialStrain where
  31  nonneg := fun _ => le_refl 0
  32
  33/-- The single state is balanced. -/
  34theorem trivial_balanced : trivialStrain.isBalanced () := rfl
  35
  36/-- The single state is a minimizer. -/
  37theorem trivial_is_minimizer : trivialStrain.isMinimizer () :=
  38  StrainFunctional.equilibria_are_minimizers () trivial_balanced
  39
  40/-- Trivial ledger: zero debit and credit. -/
  41def trivialLedger : LedgerConstraint TrivialState where
  42  debit := fun _ => 0
  43  credit := fun _ => 0
  44
  45/-- Trivial ledger is closed. -/
  46theorem trivial_ledger_closed : trivialLedger.isClosed () := rfl
  47
  48/-- Trivial strain-ledger system. -/
  49def trivialStrainLedger : StrainLedger TrivialState where
  50  strain := trivialStrain
  51  ledger := trivialLedger
  52
  53/-- The trivial state is valid. -/
  54theorem trivial_is_valid : trivialStrainLedger.isValid () :=
  55  ⟨trivial_balanced, trivial_ledger_closed⟩
  56
  57/-- Trivial display channel: observe nothing, quality always zero. -/
  58def trivialChannel : DisplayChannel TrivialState Unit where
  59  observe := fun _ => ()
  60  quality := fun _ => 0
  61
  62/-- Trivial channel bundle. -/
  63def trivialChannelBundle : ChannelBundle TrivialState where
  64  Index := Unit
  65  Obs := fun _ => Unit
  66  channel := fun _ => trivialChannel
  67
  68/-- The trivial octave. -/
  69def trivialOctave : Octave where
  70  State := TrivialState
  71  strain := trivialStrain
  72  channels := trivialChannelBundle
  73  inhabited := ⟨()⟩
  74
  75/-- The trivial octave is well-posed. -/
  76theorem trivialOctave_wellPosed : trivialOctave.wellPosed :=
  77  ⟨(), trivial_balanced⟩
  78
  79/-- The trivial model is consistent (nonempty at universe 0). -/
  80theorem trivialModel_consistent : Nonempty (Octave.{0, 0, 0}) := ⟨trivialOctave⟩
  81
  82/-! ## Vantage Triple in Trivial Model -/
  83
  84/-- A unified vantage triple in the trivial model. -/
  85def trivialVantageTriple : VantageTriple TrivialState :=
  86  VantageTriple.unified ()
  87
  88theorem trivialVantageTriple_unified : VantageTriple.isUnified trivialVantageTriple :=
  89  VantageTriple.unified_is_unified ()
  90
  91end RRF.Models
  92end IndisputableMonolith
  93

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