pith. machine review for the scientific record. sign in
structure

LogicalOperator

definition
show as:
view math explainer →
module
IndisputableMonolith.Thermodynamics.ErrorCorrection
domain
Thermodynamics
line
129 · github
papers citing
none yet

open explainer

Read the cached plain-language explainer.

open lean source

IndisputableMonolith.Thermodynamics.ErrorCorrection on GitHub at line 129.

browse module

All declarations in this module, on Recognition.

explainer page

A cached Ask Recognition explainer exists for this declaration.

open explainer

depends on

used by

formal source

 126
 127/-- A logical operator is an operation that preserves the code structure.
 128    In RS, these correspond to recognition-preserving transformations. -/
 129structure LogicalOperator (X : Ω → ℝ) where
 130  /-- The operator as a function -/
 131  op : Ω → Ω
 132  /-- The operator preserves cost structure -/
 133  preserves_cost : ∀ ω, Jcost (X (op ω)) = Jcost (X ω)
 134
 135/-- The identity is always a logical operator. -/
 136def id_logical_op (X : Ω → ℝ) : LogicalOperator X where
 137  op := id
 138  preserves_cost := fun _ => rfl
 139
 140/-! ## Connection to Physical Laws -/
 141
 142/-- Physical laws are "protected" observables that are stable under error correction.
 143    An observable O is protected if it commutes with the correction protocol. -/
 144def is_protected_observable {X : Ω → ℝ} (O : Ω → ℝ) (C : CorrectionProtocol X) : Prop :=
 145  ∀ ω, O (C.correct ω) = O ω ∨ Jcost (X ω) > 0
 146
 147/-- **Theorem**: Conservation laws are protected observables.
 148    Quantities that are conserved in the J=0 sector remain stable. -/
 149theorem conservation_is_protected {X : Ω → ℝ} (O : Ω → ℝ) (C : CorrectionProtocol X)
 150    (hX_pos : ∀ ω, 0 < X ω)
 151    (h_conserved : ∀ ω₁ ω₂, Jcost (X ω₁) = 0 → Jcost (X ω₂) = 0 → O ω₁ = O ω₂) :
 152    is_protected_observable O C := by
 153  intro ω
 154  by_cases h : Jcost (X ω) = 0
 155  · left
 156    have h_correct := C.ground_fixed ω h
 157    rw [h_correct]
 158  · right
 159    have hnonneg : 0 ≤ Jcost (X ω) := Jcost_nonneg (hX_pos ω)