Pith. sign in

IndisputableMonolith.Foundation.PrimitiveRecognitionCalculus.ValidComparisonExamples

IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/ValidComparisonExamples.lean · 85 lines · 7 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: ready · generated 2026-08-13 13:11:36.196676+00:00

   1/-
   2  PrimitiveRecognitionCalculus/ValidComparisonExamples.lean
   3
   4  Worked valid-comparison examples.
   5
   6  `ValidComparison.lean` proves the abstract bridge doctrine. This file supplies
   7  examples the Delta plan asks for: real display, finite probability display, and
   8  finite Hilbert display.
   9
  10  No project-local axioms. No sorry.
  11-/
  12
  13import Mathlib
  14import IndisputableMonolith.Foundation.PrimitiveRecognitionCalculus.ValidComparison
  15import IndisputableMonolith.Foundation.PrimitiveRecognitionCalculus.DeltaReal
  16import IndisputableMonolith.Foundation.PrimitiveRecognitionCalculus.DeltaProbability
  17import IndisputableMonolith.Foundation.PrimitiveRecognitionCalculus.HilbertDisplayCompletion
  18
  19namespace IndisputableMonolith
  20namespace Foundation
  21namespace PrimitiveRecognitionCalculus
  22namespace ValidComparisonExamples
  23
  24/-- Real display bridge: a Delta-real protocol displays to its real value, and
  25the observable is that same value. -/
  26noncomputable def realDisplayBridge :
  27    ValidComparison.Bridge DeltaReal.Protocol ℝ ℝ where
  28  display := DeltaReal.Protocol.value
  29  observeNative := DeltaReal.Protocol.value
  30  observeDisplay := id
  31  commutes := by intro x; rfl
  32
  33theorem real_display_valid_iff (x y : DeltaReal.Protocol) :
  34    ValidComparison.IsValidComparison realDisplayBridge x y ↔ x.value = y.value :=
  35  ValidComparison.validComparison_iff_native realDisplayBridge x y
  36
  37/-- Finite probability display bridge: a native finite event displays to its
  38rational counting probability. -/
  39noncomputable def probabilityDisplayBridge (N : ℕ) :
  40    ValidComparison.Bridge (DeltaProbability.Event N) ℚ ℚ where
  41  display := DeltaProbability.prob
  42  observeNative := DeltaProbability.prob
  43  observeDisplay := id
  44  commutes := by intro E; rfl
  45
  46theorem probability_display_valid_iff (N : ℕ) (E F : DeltaProbability.Event N) :
  47    ValidComparison.IsValidComparison (probabilityDisplayBridge N) E F
  48      ↔ DeltaProbability.prob E = DeltaProbability.prob F :=
  49  ValidComparison.validComparison_iff_native (probabilityDisplayBridge N) E F
  50
  51/-- Finite Hilbert display bridge, re-exported at the valid-comparison example
  52layer. -/
  53noncomputable def hilbertNormBridge (N : ℕ) :
  54    ValidComparison.Bridge
  55      (FRSComplexAmplitude.FRSIAmp N)
  56      (HilbertDisplayCompletion.FiniteHilbertDisplay N)
  57      ℝ :=
  58  HilbertDisplayCompletion.normBridge N
  59
  60theorem hilbert_display_valid_iff (N : ℕ)
  61    (ψ φ : FRSComplexAmplitude.FRSIAmp N) :
  62    ValidComparison.IsValidComparison (hilbertNormBridge N) ψ φ
  63      ↔ Finset.univ.sum (fun i : Fin (N + 1) => FRSComplexAmplitude.bornWeight ψ i)
  64        = Finset.univ.sum (fun i : Fin (N + 1) => FRSComplexAmplitude.bornWeight φ i) :=
  65  ValidComparison.validComparison_iff_native (hilbertNormBridge N) ψ φ
  66
  67/-- **Valid-comparison examples headline.** The doctrine has concrete bridges for
  68real display, finite probability display, and finite Hilbert display. -/
  69theorem valid_comparison_examples_headline :
  70    (∀ x y : DeltaReal.Protocol,
  71        ValidComparison.IsValidComparison realDisplayBridge x y ↔ x.value = y.value)
  72      ∧ (∀ (N : ℕ) (E F : DeltaProbability.Event N),
  73          ValidComparison.IsValidComparison (probabilityDisplayBridge N) E F
  74            ↔ DeltaProbability.prob E = DeltaProbability.prob F)
  75      ∧ (∀ (N : ℕ) (ψ φ : FRSComplexAmplitude.FRSIAmp N),
  76          ValidComparison.IsValidComparison (hilbertNormBridge N) ψ φ
  77            ↔ Finset.univ.sum (fun i : Fin (N + 1) => FRSComplexAmplitude.bornWeight ψ i)
  78              = Finset.univ.sum (fun i : Fin (N + 1) => FRSComplexAmplitude.bornWeight φ i)) :=
  79  ⟨real_display_valid_iff, probability_display_valid_iff, hilbert_display_valid_iff⟩
  80
  81end ValidComparisonExamples
  82end PrimitiveRecognitionCalculus
  83end Foundation
  84end IndisputableMonolith
  85

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