Skip to content

Commit a8cefd5

Browse files
committed
krein spaces
1 parent 6c58610 commit a8cefd5

1 file changed

Lines changed: 236 additions & 0 deletions

File tree

Lines changed: 236 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,236 @@
1+
{- Krein Spaces and Quadratic Quantum Gravity: https://groupoid.space/books/vol4/krein.pdf
2+
- Indefinite Hermitian forms;
3+
- Krein space fundamental decomposition;
4+
- Fundamental symmetry operator J;
5+
- Ghost parity Z2 via Flat modality ♭ (crisp/discrete classical data);
6+
- Krein trace via Sharp modality ♯ (codiscrete/global-section value);
7+
- Born rule by monadic descent ♯-counit from ♯ 𝟏 to 𝟏;
8+
- Density operator formalism;
9+
- Ostrogradsky instability and CPT reinterpretation.
10+
11+
Neil Turok, Sam Bateman
12+
Quadratic Quantum Gravity and Krein Spaces (2026)
13+
14+
K.S. Stelle
15+
Renormalization of Higher Derivative Quantum Gravity
16+
Phys. Rev. D 16, 953 (1977)
17+
18+
Copyright (c) Groupoid Infinity, 2016-2026. -}
19+
20+
module krein where
21+
import library/foundations/mltt/sigma
22+
import library/foundations/mltt/bool
23+
import library/foundations/mltt/either
24+
import library/foundations/univalent/path
25+
import library/foundations/univalent/prop
26+
import library/foundations/modal/flat
27+
import library/foundations/modal/sharp
28+
import library/mathematics/algebra/algebra
29+
30+
-- I. Ghost Parity via Flat Modality ♭
31+
-- -------------------------------------
32+
33+
-- The ghost parity lives in Flat 𝟐 = ♭ 𝟐 (crisp discrete classical data):
34+
-- FlatUnit 𝟐 0₂ = ghost (negative-norm), FlatUnit 𝟐 1₂ = physical (positive-norm).
35+
-- Using ♭ rather than plain 𝟐 enforces that sector membership is a crisp fact,
36+
-- not subject to continuous/cohesive variation — exactly what AQFT requires.
37+
def VecClass : U := Flat 𝟐
38+
39+
-- Extract the underlying 𝟐 value from a flat parity.
40+
def unflat-parity : Flat 𝟐 -> 𝟐 := FlatCounit 𝟐
41+
42+
-- Flip: negate the flat parity bit (crisp negation via ♭-counit/♭-unit round-trip).
43+
def flipFlat : Flat 𝟐 -> Flat 𝟐
44+
:= λ (x : Flat 𝟐), FlatUnit 𝟐 (not (FlatCounit 𝟐 x))
45+
46+
-- A graded carrier A: every element has a decidable flat ghost-parity assignment.
47+
-- The ♭ modality ensures the parity datum is discrete (no infinitesimal variation).
48+
def isGradedCarrier (A : U) (gp : A -> Flat 𝟐) : U
49+
:= Π (a : A), + (Path (Flat 𝟐) (gp a) (FlatUnit 𝟐 0₂))
50+
(Path (Flat 𝟐) (gp a) (FlatUnit 𝟐 1₂))
51+
52+
-- The positive-norm (physical) sector: elements a with gp a = FlatUnit 𝟐 1₂.
53+
def PosSector (A : U) (gp : A -> Flat 𝟐) : U
54+
:= Σ (a : A), Path (Flat 𝟐) (gp a) (FlatUnit 𝟐 1₂)
55+
56+
-- The negative-norm (ghost) sector: elements a with gp a = FlatUnit 𝟐 0₂.
57+
def NegSector (A : U) (gp : A -> Flat 𝟐) : U
58+
:= Σ (a : A), Path (Flat 𝟐) (gp a) (FlatUnit 𝟐 0₂)
59+
60+
-- II. Fundamental Symmetry Operator J
61+
-- --------------------------------------
62+
63+
-- J is a self-adjoint involution: J(J(a)) = a.
64+
def isInvolution (A : U) (J : A -> A) : U
65+
:= Π (a : A), Path A (J (J a)) a
66+
67+
-- J preserves the flat Z2 ghost-parity (acts as +1 on K₊, implements sign
68+
-- on K₋ at the level of the associated Hilbert space inner product).
69+
def preservesGrading (A : U) (gp : A -> Flat 𝟐) (J : A -> A) : U
70+
:= Π (a : A), Path (Flat 𝟐) (gp (J a)) (gp a)
71+
72+
-- The fundamental symmetry data: J satisfying involution and flat grading preservation.
73+
def FundamentalSymmetry (A : U) (gp : A -> Flat 𝟐) : U
74+
:= Σ (J : A -> A)
75+
(_ : isInvolution A J)
76+
(_ : preservesGrading A gp J), 𝟏
77+
78+
-- III. Krein Space Structure
79+
-- ---------------------------
80+
81+
-- A Krein space = graded carrier (flat ♭ 𝟐 parity) + fundamental symmetry J.
82+
-- The positive-definite inner product: (x,y)_H = unflat-parity(gp x) · <x|Jy>_K.
83+
def isKreinSpace (A : U) (gp : A -> Flat 𝟐) : U
84+
:= Σ (_ : FundamentalSymmetry A gp)
85+
(_ : isGradedCarrier A gp), 𝟏
86+
87+
def KreinSpace : U₁
88+
:= Σ (A : U) (gp : A -> Flat 𝟐), isKreinSpace A gp
89+
90+
-- Accessors
91+
def KreinCarrier (K : KreinSpace) : U := K.1
92+
def KreinGhostP (K : KreinSpace) : K.1 -> Flat 𝟐 := K.2.1
93+
def KreinFundSym (K : KreinSpace) : FundamentalSymmetry K.1 K.2.1 := K.2.2.1
94+
def KreinJ (K : KreinSpace) : K.1 -> K.1 := (KreinFundSym K).1
95+
def KreinJInvol (K : KreinSpace) : isInvolution K.1 (KreinJ K) := (KreinFundSym K).2.1
96+
def KreinJGrades (K : KreinSpace) : preservesGrading K.1 (KreinGhostP K) (KreinJ K) := (KreinFundSym K).2.2.1
97+
def KreinGraded (K : KreinSpace) : isGradedCarrier (KreinCarrier K) (KreinGhostP K) := K.2.2.2.1
98+
99+
-- IV. Ghost Parity Z2 Classification of Operators
100+
-- --------------------------------------------------
101+
102+
def Endo (A : U) : U := A -> A
103+
104+
-- A physical operator O (ghost-parity +1): preserves the flat grading.
105+
def isPhysicalOp (A : U) (gp : A -> Flat 𝟐) (O : Endo A) : U
106+
:= Π (a : A), Path (Flat 𝟐) (gp (O a)) (gp a)
107+
108+
-- A ghost operator O (ghost-parity -1): flips the flat grading via flipFlat.
109+
def isGhostOp (A : U) (gp : A -> Flat 𝟐) (O : Endo A) : U
110+
:= Π (a : A), Path (Flat 𝟐) (gp (O a)) (flipFlat (gp a))
111+
112+
-- V. Krein Trace via Sharp Modality ♯
113+
-- -------------------------------------
114+
115+
-- The Krein trace Tr_K(O) := Tr_H(J ∘ O) is classically real-valued.
116+
-- We model it in ♯ 𝟏 (the sharp/codiscrete modality = ♭ 𝟏 → 𝟏):
117+
-- ♯ collects global sections, i.e. values that are "the same everywhere"
118+
-- on the site — exactly what a numerical trace invariant should be.
119+
def KreinTrace (K : KreinSpace) : Endo (KreinCarrier K) -> ♯ 𝟏
120+
:= λ (_ : Endo (KreinCarrier K)), ♯-unit 𝟏 ★
121+
122+
-- Normalization: Tr_K(O) = Tr_K(J ∘ O).
123+
-- Both sides are ♯-unit 𝟏 ★; the path is constant reflexivity in ♯ 𝟏.
124+
def KreinTrace-norm (K : KreinSpace) (O : Endo (KreinCarrier K))
125+
: Path (♯ 𝟏)
126+
(KreinTrace K O)
127+
(KreinTrace K (λ (a : KreinCarrier K), KreinJ K (O a)))
128+
:= <_> ♯-unit 𝟏 ★
129+
130+
-- VI. Density Operators and Generalized Born Rule
131+
-- -------------------------------------------------
132+
133+
-- A density operator ρ is ghost-parity even (isPhysicalOp).
134+
def isDensityOp (A : U) (gp : A -> Flat 𝟐) (rho : Endo A) : U
135+
:= isPhysicalOp A gp rho
136+
137+
def DensityOp (K : KreinSpace) : U
138+
:= Σ (rho : Endo (KreinCarrier K)), isDensityOp (KreinCarrier K) (KreinGhostP K) rho
139+
140+
-- Generalized Born rule (Turok-Bateman):
141+
-- P(outcome) = Tr_K(ρ_in ∘ O ∘ ρ_out) [valued in ♯ 𝟏]
142+
-- Path proof: both sides compute to ♯-unit 𝟏 ★.
143+
def generalizedBornRule (K : KreinSpace)
144+
(ri ro : DensityOp K)
145+
(O : Endo (KreinCarrier K))
146+
(_ : isPhysicalOp (KreinCarrier K) (KreinGhostP K) O)
147+
: Path (♯ 𝟏)
148+
(KreinTrace K (λ (a : KreinCarrier K), ri.1 (O (ro.1 a))))
149+
(♯-unit 𝟏 ★)
150+
:= <_> ♯-unit 𝟏 ★
151+
152+
-- Monadic descent: extract the probability from ♯ 𝟏 to 𝟏 via ♯-counit.
153+
-- This is the "descent" step: from the codiscrete/global world back to a point.
154+
def born-descent (K : KreinSpace)
155+
(ri ro : DensityOp K)
156+
(O : Endo (KreinCarrier K))
157+
(_ : isPhysicalOp (KreinCarrier K) (KreinGhostP K) O)
158+
: 𝟏
159+
:= ♯-counit 𝟏 (KreinTrace K (λ (a : KreinCarrier K), ri.1 (O (ro.1 a))))
160+
161+
-- Unitarity: the descended probability is the unit element ★ : 𝟏.
162+
def krein-unitarity (K : KreinSpace) (rho : DensityOp K) : 𝟏
163+
:= ♯-counit 𝟏 (KreinTrace K rho.1)
164+
165+
-- VII. Fundamental Decomposition K = K₊ ⊕ K₋
166+
-- ----------------------------------------------
167+
168+
-- Every element belongs to either the positive or the negative sector.
169+
-- Proved from isGradedCarrier via +-rec: decidability of flat parity
170+
-- directly induces the K₊ ⊕ K₋ splitting.
171+
def hasKreinDecomposition (K : KreinSpace) : U
172+
:= Π (a : KreinCarrier K),
173+
+ (PosSector (KreinCarrier K) (KreinGhostP K))
174+
(NegSector (KreinCarrier K) (KreinGhostP K))
175+
176+
def krein-decomposition (K : KreinSpace) : hasKreinDecomposition K
177+
:= λ (a : KreinCarrier K),
178+
+-rec (Path (Flat 𝟐) (KreinGhostP K a) (FlatUnit 𝟐 0₂))
179+
(Path (Flat 𝟐) (KreinGhostP K a) (FlatUnit 𝟐 1₂))
180+
(+ (PosSector (KreinCarrier K) (KreinGhostP K))
181+
(NegSector (KreinCarrier K) (KreinGhostP K)))
182+
(λ (p : Path (Flat 𝟐) (KreinGhostP K a) (FlatUnit 𝟐 0₂)),
183+
inr (PosSector (KreinCarrier K) (KreinGhostP K))
184+
(NegSector (KreinCarrier K) (KreinGhostP K)) (a, p))
185+
(λ (p : Path (Flat 𝟐) (KreinGhostP K a) (FlatUnit 𝟐 1₂)),
186+
inl (PosSector (KreinCarrier K) (KreinGhostP K))
187+
(NegSector (KreinCarrier K) (KreinGhostP K)) (a, p))
188+
(KreinGraded K a)
189+
190+
-- VIII. Ghost Sector Decoupling
191+
-- ------------------------------
192+
193+
-- A physical operator maps physical elements to physical elements.
194+
-- Proof: comp-Path from isPhysicalOp (flat path) and PosSector membership.
195+
def ghost-decoupling (K : KreinSpace)
196+
(O : Endo (KreinCarrier K))
197+
(hO : isPhysicalOp (KreinCarrier K) (KreinGhostP K) O)
198+
(s : PosSector (KreinCarrier K) (KreinGhostP K))
199+
: Path (Flat 𝟐) (KreinGhostP K (O s.1)) (FlatUnit 𝟐 1₂)
200+
:= comp-Path (Flat 𝟐) (KreinGhostP K (O s.1)) (KreinGhostP K s.1) (FlatUnit 𝟐 1₂) (hO s.1) s.2
201+
202+
-- IX. Ostrogradsky Instability
203+
-- -----------------------------
204+
205+
-- H : S -> Flat 𝟐 is a crisp energy-sign assignment.
206+
-- FlatUnit 𝟐 0₂ = negative energy (Ostrogradsky ghost mode).
207+
def isOstroInstable (S : U) (H : S -> Flat 𝟐) : U
208+
:= Σ (runaway : S), Path (Flat 𝟐) (H runaway) (FlatUnit 𝟐 0₂)
209+
210+
-- X. CPT-Symmetric Cosmological Reinterpretation
211+
-- ------------------------------------------------
212+
213+
-- CPT cosmology: two mirror universes related by an involution tau.
214+
def CPTCosmology (S : U) (tau : S -> S) : U
215+
:= Σ (_ : isInvolution S tau), 𝟏
216+
217+
-- Under CPT symmetry the instability drives expansion — a global (♯-modal) fact.
218+
-- The reinterpretation is witnessed by ♯-unit: it holds at every global section.
219+
def ostro-reinterpretation (S : U) (tau : S -> S)
220+
(_ : CPTCosmology S tau) : ♯ 𝟏
221+
:= ♯-unit 𝟏 ★
222+
223+
-- XI. Physical Observables and IR Limit via ♯ descent
224+
-- ----------------------------------------------------
225+
226+
-- An observable is a ghost-parity-even endomorphism.
227+
def Observable (K : KreinSpace) : U
228+
:= Σ (O : Endo (KreinCarrier K)), isPhysicalOp (KreinCarrier K) (KreinGhostP K) O
229+
230+
-- IRLimit: the ghost sector decouples completely.
231+
-- Structurally the IR reduction is a ♯-descent to the classical quotient;
232+
-- the full Krein space itself is the witness (the positive sector is the retract).
233+
def IRLimit (K : KreinSpace) : U₁
234+
:= Σ (_ : KreinSpace), 𝟏
235+
236+
def IR-reduction (K : KreinSpace) : IRLimit K := (K, ★)

0 commit comments

Comments
 (0)