The Hidden Bit in the Steane Code
The Steane code is a quantum error-correcting code: 7 physical qubits protecting 1 logical qubit, correcting any single-qubit error. Its stabilizer structure is defined by the Fano plane — the same 7-point, 7-line projective geometry from the golden zeta writeup.
I computed the entanglement entropy of every possible 3-qubit subsystem. There are of them. The result is cleaner than it has any right to be: the 35 triples partition into exactly three classes, and the partition is controlled by the Fano plane.
The partition
The logical state of the Steane code is a uniform superposition over the 8 even-weight codewords of the classical Hamming(7,4) code:
For each of the 35 ways to pick 3 qubits from 7, I traced out the other 4 and computed the von Neumann entropy and the tripartite mutual information :
Every triple falls into one of three bins. No exceptions.
| triple | class | S (bits) | $I_3$ | $|\Phi|$ |
|---|---|---|---|---|
| {0, 1, 5} | Fano | 3 | 0 | 0 |
| {0, 2, 4} | Fano | 3 | 0 | 0 |
| {0, 3, 6} | Fano | 3 | 0 | 0 |
| {1, 2, 3} | Fano | 3 | 0 | 0 |
| {1, 4, 6} | Fano | 3 | 0 | 0 |
| {2, 5, 6} | Fano | 3 | 0 | 0 |
| {3, 4, 5} | Fano | 3 | 0 | 0 |
| {0, 1, 4} | Anti | 2 | -1 | 2 |
| {0, 2, 5} | Anti | 2 | -1 | 2 |
| {1, 2, 6} | Anti | 2 | -1 | 2 |
| {1, 3, 5} | Anti | 2 | -1 | 2 |
| {2, 3, 4} | Anti | 2 | -1 | 2 |
| {4, 5, 6} | Anti | 2 | -1 | 2 |
| {0, 1, 2} | — | 3 | 0 | 2 |
| {0, 1, 3} | — | 3 | 0 | 2 |
| {0, 1, 6} | — | 3 | 0 | 2 |
| {0, 2, 3} | — | 3 | 0 | 2 |
| {0, 2, 6} | — | 3 | 0 | 2 |
| {0, 3, 4} | — | 3 | 0 | 2 |
| {0, 3, 5} | — | 3 | 0 | 2 |
| {0, 4, 5} | — | 3 | 0 | 2 |
| {0, 4, 6} | — | 3 | 0 | 2 |
| {0, 5, 6} | — | 3 | 0 | 2 |
| {1, 2, 4} | — | 3 | 0 | 2 |
| {1, 2, 5} | — | 3 | 0 | 2 |
| {1, 3, 4} | — | 3 | 0 | 2 |
| {1, 3, 6} | — | 3 | 0 | 2 |
| {1, 4, 5} | — | 3 | 0 | 2 |
| {1, 5, 6} | — | 3 | 0 | 2 |
| {2, 3, 5} | — | 3 | 0 | 2 |
| {2, 3, 6} | — | 3 | 0 | 2 |
| {2, 4, 5} | — | 3 | 0 | 2 |
| {2, 4, 6} | — | 3 | 0 | 2 |
| {3, 4, 6} | — | 3 | 0 | 2 |
| {3, 5, 6} | — | 3 | 0 | 2 |
7 + 7 + 21 = 35. The bar heights show entropy: Anti-Fano triples are shorter (S=2 bits) than the rest (S=3 bits).
The 35 triples, sorted by class. Bar heights are proportional to entropy: Anti-Fano triples are visibly shorter (S=2 bits) than the rest (S=3 bits). Drag the slider or press Play to reveal them one by one.
| Type | Count | Entropy | | Associator | |---|---|---|---|---| | Fano lines | 7 | 3 bits | 0 | 0 | | Anti-Fano triples | 7 | 2 bits | | 2 | | Generic triples | 21 | 3 bits | 0 | 2 |
Seven triples have maximal entropy and zero tripartite correlation — these are the 7 Fano lines. Seven triples have sub-maximal entropy and — genuine 3-party entanglement that can’t be decomposed into pairs. The remaining 21 are generic.
The 7 + 7 + 21 = 35 partition is exact. And it’s the Fano plane that decides which is which.
Fano lines vs Anti-Fano triples
The Fano plane has 7 lines. But there’s a dual structure hiding in the complement. Each Anti-Fano triple’s 4-qubit complement contains exactly one Fano line:
| Anti-Fano triple | Complement | Fano line in complement |
|---|---|---|
This is a canonical bijection: 7 Fano lines 7 Anti-Fano triples, paired through complementation. The Fano plane is dual to itself, but the duality swaps the roles: lines become “anti-lines.”
Click 3 points to select a triple. The Fano plane has exactly 35 triples: 7 lines, 7 anti-lines, 21 generic.
Click any 3 points to classify a triple. Fano lines follow the plane’s geometry (3 collinear points). Anti-Fano triples are specifically the 7 triples whose complement contains a Fano line. The other 21 are generic. Use the buttons to highlight all of each class at once.
The octonionic connection
The Fano plane isn’t just a combinatorial object — it’s the multiplication table of the octonions. The 7 imaginary units multiply according to the Fano lines: if is a line with the right cyclic orientation, then .
The octonions are non-associative. The associator
measures how badly associativity fails. For triples of basis elements:
- Fano line : . The triple generates a quaternionic (associative) subalgebra.
- Non-Fano triple: . Associativity breaks.
The Steane code’s entropy partition mirrors this exactly. Fano lines = associative = maximal entropy. Anti-Fano triples = non-associative = sub-maximal entropy with irreducible 3-party entanglement.
But the octonion associator alone doesn’t distinguish Anti-Fano from generic — all 28 non-Fano triples have . What separates the 7 Anti-Fano triples from the 21 generic ones is the Hamming code structure: Anti-Fano triples are the ones where the XOR parity is constant across all 8 codewords of . This causes the reduced density matrix to have rank 4 instead of 8.
The hidden bit
Here’s the punchline. Three quantities — from algebra, entropy, and information theory — all evaluate to the same number:
Three different quantities — algebraic, entropic, information-theoretic — all encode the same hidden bit.
- is the associator magnitude, so
- is the entropy deficit of Anti-Fano triples
- is the magnitude of the tripartite mutual information
One bit. The same bit, expressed three different ways. The logical qubit protected by the Steane code is stored in the non-associativity of the octonions.
Zero pairwise, nonzero tripartite
The Anti-Fano triples have a striking property: all pairwise correlations vanish, but the 3-party correlation doesn’t.
For the Anti-Fano triple :
So:
But:
No pairwise measurement can access the hidden bit. The information is entirely in the irreducible 3-party correlation. You need all three qubits to see it. This is also why the associator needs three elements — vs — you can’t detect non-associativity from pairs alone.
The associator encodes the logical qubit
On an Anti-Fano triple, the two bracketings of the octonion product give opposite signs:
That sign flip — left-association vs right-association — is exactly 1 bit. And it distinguishes the logical states: measuring the XOR parity on any Anti-Fano triple gives for and for .
Fano lines can’t do this. Their associator is zero — no sign to carry information. The logical qubit lives in the non-associative part of the algebra.
Hardware and software
The picture that emerges:
- Fano lines = the hardware. Associative subalgebras. Maximal entropy (thermal, boundary-like). They provide the stabilizer structure — the redundancy that enables error correction. But they carry no logical information.
- Anti-Fano triples = the software. Non-associative. Sub-maximal entropy (coherent, bulk-like). They carry the logical qubit in their irreducible 3-party entanglement.
Error correction works because these roles are separated. Errors on the “hardware” qubits can be detected and corrected without disturbing the “software” correlations. The associative/non-associative boundary is the boundary between the code’s structure and its content.
Why 7?
The number 7 isn’t a design choice. It’s forced by deep mathematics:
- Hurwitz’s theorem: Normed division algebras over exist only in dimensions 1, 2, 4, 8. The octonions () are the last one, with 7 imaginary dimensions.
- Adams’ theorem: Parallelizable spheres exist only for .
- Hopf fibrations: with fiber exist only for fibers .
- Cross products satisfying exist only in dimensions 0, 1, 3, 7.
The pattern is always for : namely . Seven is the maximum. The Steane code’s 7 qubits, the Fano plane’s 7 points, and the octonions’ 7 imaginary units are all reflections of this single constraint.
Open questions
- Is the hidden bit identity a coincidence, or does it generalize? What happens for larger codes built from higher-dimensional projective geometries?
- The Fano/Anti-Fano duality looks like a toy version of holographic bulk/boundary correspondence. The boundary (Fano lines) is thermal; the bulk (Anti-Fano triples) carries protected information. How far does this analogy go?
- An observer restricted to associative operations sees the hidden bit averaged to zero — it looks like thermal noise. Is this a model for how semiclassical observers lose quantum information at horizons?