Documentation

LeanPool.LeanQuantumAlg.Primitives.BellPair

Bell pair (EPR pair) and its preparation #

The Bell state (EPR-pair) (|00⟩ + |11⟩)/√2 [dW19, qcnotes.tex:622] is prepared from |00⟩ by a Hadamard on qubit 0 followed by a CNOT with control qubit 0:

CNOT · (H ⊗ I) · |00⟩ = (|00⟩ + |11⟩)/√2.

This is a Primitives module: the Bell pair is a reusable resource state, so it lives below Algorithms/ and is shared by the protocols that consume it (superdense coding, teleportation) without those algorithms importing one another. The registered bell-state-prep target is bell_state_prep here.

Main results #

noncomputable def QuantumAlg.bellVec :

Raw Bell-state vector ( |00⟩ + |11⟩ ) / √2 [dW19, qcnotes.tex:622]. In the big-endian basis labelling, |00⟩ = ket 0 and |11⟩ = ket 3.

Equations
Instances For

    The raw Bell-state vector has unit norm.

    noncomputable def QuantumAlg.bell :

    The Bell state (EPR-pair) as a normalized pure state.

    Equations
    Instances For

      The Bell state in per-qubit tensor form: (|0⟩⊗|0⟩ + |1⟩⊗|1⟩)/√2.

      Bell-state preparation: a Hadamard on qubit 0 followed by a CNOT (control = qubit 0) turns |00⟩ into the Bell state.

      @[simp]

      The Bell state is normalized by construction.