Skip to the content.

AQFT in Lean

by Kelly J Davis

Blueprint (web) Blueprint (pdf) Documentation GitHub

AQFT in Lean

In 1964, Rudolf Haag and Daniel Kastler introduced a set of axioms for Algebraic Quantum Field Theory (AQFT) in Minkowski spacetime, proposing a mathematically rigorous, operator-algebraic framework for quantum field theory in terms of nets of C*-algebras indexed by regions of Minkowski spacetime. This project formalises a “sharpened” version of these axioms in the Lean Theorem Prover, following the original paper by Haag and Kastler. The original axioms, while revolutionary, left several details underspecified. This project clarifies those details and produces definitions, theorems, and axioms amenable to computer-assisted formalisation. In addition, this project formalises these “sharpened” axioms in curved spacetime, and adds a general-covariance postulate relating the nets over diffeomorphism-related backgrounds.

How the blueprint is organised

The blueprint is 116 pages long and splits cleanly in two.

Chapters 1–9 are mathematical background and are not formalised in Lean. They motivate and analyse each of the original Haag–Kastler axioms in turn, and then generalise them to curved spacetime. Along the way they cite twelve supporting results, numbered 1 through 12 — Gelfand–Naimark, the Bounded Linear Transformation Theorem, the existence of a Lorentz metric, and so on. These are quoted from the literature where needed; none of them carries a Lean declaration.

Chapter 10 collects the formalisation-ready content, and it is the content of Chapter 10 that is formalised in Lean. Its declarations are numbered consecutively, running from Definition 13 through Definition 321, and comprise 309 declarations in total: 90 definitions, 115 theorems, and 104 lemmas, mapped onto 563 Lean declarations. Chapter 10 is divided into five top-level sections, §10.1 through §10.5.

308 of the 309 are formalised, statements and proofs alike. Every one of the 219 theorems and lemmas in Chapter 10 carries a written proof in the blueprint, and 218 of those proofs are formalised in Lean. The single exception, in both counts, is Theorem 158; it is discussed under Formalisation status below.

At a glance, the 309 declarations break down by top-level section as follows:

Section Topic Pages Definitions Theorems Lemmas Total Formalised
§10.1 GNS Construction 28–37 2 1 3 6 6
§10.2 Spacetime and causal structure 37–67 30 16 66 112 112
§10.3 Haag–Kastler Axioms (Minkowski) 67–104 39 69 32 140 139
§10.4 Haag–Kastler Axioms (curved spacetime) 105–114 17 29 3 49 49
§10.5 General Covariance 114–116 2 0 0 2 2
Total     90 115 104 309 308

Where the Lean lives

Each blueprint section maps onto a compact set of Lean modules, which is the fastest way to find the code behind a given piece of the theory:

Section Principal Lean modules
§10.1 Physicslib4/GNS/ (Basic, Construction, NullSpace, CauchySchwarz)
§10.2 Physicslib4/Spacetime/ (Causality, Curves, CausalComplement, CausalStructure, Minkowski, MinkowskiDirected, LorentzianSpacetime, IsometryCausality, …)
§10.3 Physicslib4/AQFT/HaagKastler/, Physicslib4/GNS/ (Irreducibility, Superselection, RadonNikodym, ExtremeState, …), Physicslib4/AQFT/KMS.lean, Physicslib4/Analysis/StripPeriodicExtension.lean
§10.4 Physicslib4/AQFT/HaagKastlerCurved/ (LocalVonNeumann, StabilizerAction, StabilizerKMS, Purity, GeometricCovariance, …)
§10.5 Physicslib4/AQFT/HaagKastlerCurved/GeneralCovariance.lean

Formalisation status

The blueprint annotates every node with the Lean declarations that realise it, so the status of each node is a matter of record rather than of estimate. There is exactly one node in Chapter 10 that is not formalised, and two further places where the Lean is deliberately weaker or differently shaped than the prose. All three are flagged in the blueprint text itself; they are collected here so that they are not discovered by surprise.

Not formalised (one node).

Formalised, but the Lean is weaker than the prose (two places). Both nodes below carry Lean declarations and formalised proofs; the caveat is one of fidelity, not of coverage.

If you’d like to contribute, you may find the following links useful:

The Blueprint

Chapters 1–9: unpacking the original axioms

Chapters 1–9 unpack and analyse the original Haag–Kastler axioms one by one:

Chapter 10: the formalisation-ready content

Chapter 10 restates the axioms in a form amenable to auto-formalisation and proves everything they depend on. Its five top-level sections are described below in order; the complete, itemised list of all 309 numbered declarations follows in What is Being Formalised.

What is Being Formalised

Only the content of Chapter 10 is formalised in Lean. Its declarations are numbered consecutively from Definition 13 through Definition 321 — 309 in total — and every one of them is listed below, in numerical order, under the blueprint subsection in which it appears. Each entry links to the node in the web blueprint and names the principal Lean declaration that realises it; where a node maps onto several declarations, the count of the remainder is shown. This list is derived mechanically from the blueprint’s own \lean and \leanok annotations, so it can be checked line by line against the source.

The lower numbers, 1 through 12, label supporting theorems and definitions introduced along the way in the motivational Chapters 4–9. None of them carries a Lean declaration, and they are not formalised: C*-spectrum invariance under inclusion (Theorem 1), uniqueness of the C*-norm (Theorem 2), strong density of unital *-algebras (Theorem 3), the Bounded Linear Transformation Theorem (Theorem 4), Gelfand–Naimark (Theorem 5), the rarity of primitive abelian C*-algebras (Lemma 6), existence of a Lorentz metric (Theorem 7), causal convexity and strong causality (Definitions 8–9), properties of the Alexandrov topology (Theorem 10), Lorentzian spacetime (Definition 11), and the local observable (Definition 12).

§10.1 GNS Construction (pp. 28–37)

§10.1.1 GNS Construction Theorem (p. 28)

§10.1.2 Auxiliary Results Used in the Proof (p. 34)

§10.2 Spacetime and causal structure (pp. 37–67)

§10.2 opening run — spacetime, tangent-vector causality, curves, trips, futures and pasts (p. 37)

§10.2.1 Causal diamonds, spacelike complement, and causal closure (p. 44)

§10.2.2 Causal convexity (p. 48)

§10.2.3 Causal convexity: closure structure, and the Alexandrov basis theorems (p. 49)

§10.2.4 Dilations are causal automorphisms but not isometries (p. 54)

§10.2.5 Isometries and basis-set preservation (p. 54)

§10.2.6 Pullback metrics and cross-metric isometries (p. 55)

§10.3 Haag–Kastler Axioms in Minkowski spacetime (pp. 67–104)

§10.3 The axioms (p. 67)

§10.3.1 The Quasilocal Colimit (p. 68)

§10.3.2 Einstein Causality (p. 86)

§10.3.3 Local von Neumann Algebras (p. 86)

§10.3.4 Relative Commutants of Nested Local Algebras (p. 88)

§10.3.5 Irreducibility and Schur’s Lemma (p. 90)

§10.3.6 Unitary Equivalence and Superselection (p. 93)

§10.3.7 GNS Covariance (p. 94)

§10.3.8 Disjointness and Quasi-Equivalence (p. 95)

§10.3.9 Direct Sums, Amplification, and Reducibility (p. 98)

§10.3.10 Covariant States and the Covariance Action (p. 99)

§10.3.11 The Separating Vector of a Faithful State (p. 102)

§10.3.12 The KMS Condition and Thermal Equilibrium (p. 102)

§10.3.13 KMS States for the Covariance Flow (p. 104)

§10.4 Haag–Kastler Axioms in curved spacetime (pp. 105–114)

§10.4 The axioms (p. 105)

§10.4.1 Einstein Causality in Curved Spacetime (p. 107)

§10.4.2 Local von Neumann Algebras in Curved Spacetime (p. 107)

§10.4.3 Relative Commutants of Nested Local Algebras in Curved Spacetime (p. 109)

§10.4.4 Purity of States on Local Algebras in Curved Spacetime (p. 110)

§10.4.5 Covariant States in Curved Spacetime (p. 111)

§10.4.6 The Stabiliser GNS Unitary in Curved Spacetime (p. 112)

§10.4.7 KMS States for a Killing Flow (p. 113)

§10.5 General Covariance: Nets on Pullback-Related Metrics (p. 114)

The axioms at a glance

Axiom 6 (Primitivity) from the original 1964 Haag–Kastler paper is not carried into the sharpened axiom set — see Chapter 8 for the discussion of why it is dropped. The five sharpened axioms in each setting, bundled together as a HaagKastlerNet, are what is actually formalised.

Minkowski spacetime — bundled as Physicslib4.AQFT.HaagKastler.HaagKastlerNet (Definition 160):

Axiom Node Lean
1. Local Algebras Definition 131 Physicslib4.AQFT.HaagKastler.LocalNet
2. Isotony Definition 132 Physicslib4.AQFT.HaagKastler.Isotony
3. Local Commutativity Definition 149 Physicslib4.AQFT.HaagKastler.LocalCommutativity
4. Quasilocal Completeness Definition 151 Physicslib4.AQFT.HaagKastler.ObservableCorrespondence
5. Lorentz Covariance Definition 159 Physicslib4.AQFT.HaagKastler.LorentzCovariance

Curved spacetime — bundled as Physicslib4.AQFT.HaagKastlerCurved.HaagKastlerNet (Definition 277):

Axiom Node Lean
1. Local Algebras Definition 271 Physicslib4.AQFT.HaagKastlerCurved.LocalNet
2. Isotony Definition 272 Physicslib4.AQFT.HaagKastlerCurved.Isotony
3. Local Commutativity Definition 273 Physicslib4.AQFT.HaagKastlerCurved.LocalCommutativity
4. Local Completeness Definition 275 Physicslib4.AQFT.HaagKastlerCurved.LocalAlgebra
5. Isometric Covariance Definition 276 Physicslib4.AQFT.HaagKastlerCurved.IsometricCovariance

General Covariance (Definition 321, Physicslib4.AQFT.HaagKastlerCurved.IsGenerallyCovariant) is deliberately not a sixth axiom. Axioms 1–5 each constrain a single net over a single fixed spacetime, whereas general covariance relates two nets over two spacetimes; it is therefore a property of the section \(L \mapsto \mathfrak{U}_L\) assigning a net to every Lorentzian spacetime, not an extra field of the net structure.

Two changes to the axioms are worth calling out for readers coming from an earlier version of this blueprint:

Contributing

  1. Make sure you have installed Lean.
  2. Download the repository using git clone https://github.com/physicslib/physicslib4.git.
  3. Run lake exe cache get! to download built dependencies (this speeds up the build process).
  4. Run lake build to build all files in this repository.

For more on getting started with Lean, visit the Lean community website and the Mathlib documentation.

Contributions are welcome. If you would like to contribute, please add your work to a new branch and open a pull request. Your PR will need to pass the relevant status checks, be approved by a reviewer, and have no conflicts with the base branch before it can be merged.

Acknowledgements

We are grateful to Rudolf Haag and Daniel Kastler for their foundational work, and to the authors of Entanglement in Algebraic Quantum Field Theories for their clear presentation of the GNS construction that this blueprint in part follows. We would also like to thank the Mathlib maintainers and the broader Lean community for their continued support.

physicslib4 is maintained by Kelly J Davis.