Hypergraph-Product Codes
The hypergraph product turns any pair of classical codes into a quantum CSS code, the first general recipe for high-rate quantum LDPC codes.
A product of two classical codes
Given two classical parity-check matrices H1 and H2, the hypergraph product builds a quantum CSS code whose X and Z checks are assembled from H1, H2, and their transposes. If the inputs are sparse, so is the output, so the construction preserves the LDPC property. The toric code is the special case where both inputs are the parity-check matrix of the classical repetition code.
Parameters
If the classical codes have parameters [n_i, k_i, d_i], the hypergraph product has roughly n = n1 n2 + m1 m2 physical qubits and k = k1 k2 logical qubits, with distance equal to the minimum of the classical distances. Choosing good classical codes with constant rate makes the quantum code have constant rate as well, something no product of surface codes can achieve.
- Any classical LDPC code can serve as an input.
- The construction guarantees the CSS commutation condition automatically.
- Rate is the product of the two classical rates, so it stays constant.
- Distance scales like the square root of the block length, weaker than the best modern codes.
The hypergraph product was the first construction to break the surface code's square-root distance and low rate simultaneously in a general way. It sparked the search for even better families and provided the template that later constructions refined.
Its main limitation is distance scaling: the distance grows only like the square root of the number of qubits, the same order as the surface code, so the win is in rate rather than distance. Good quantum LDPC codes and lifted products push distance to grow linearly, closing that gap.