JordanWigner Module
The Jordan-Wigner fermion-to-qubit encoding (1928).
Maps fermionic operators to qubit Pauli operators by inserting a chain of Z operators to track the parity of all preceding modes: cⱼ → Xⱼ ⊗ Zⱼ₋₁ ⊗ ... ⊗ Z₀ dⱼ → Yⱼ ⊗ Zⱼ₋₁ ⊗ ... ⊗ Z₀ where cⱼ = a†ⱼ + aⱼ and dⱼ = i(a†ⱼ − aⱼ) are Majorana operators. The Z-chain grows linearly with mode index j, giving O(n) worst-case weight. For O(log n) alternatives, see BravyiKitaev and TreeEncoding. Reference: P. Jordan and E. Wigner, "Über das Paulische Äquivalenzverbot," Z. Phys. 47, 631 (1928).
Functions and values
| Function or value |
Description
|
Full Usage:
jordanWignerTerms op j n
Parameters:
LadderOperatorUnit
-
The ladder operator (Raise, Lower, or Identity).
j : uint32
-
The qubit/mode index for this operator.
n : uint32
-
The total number of qubits in the register.
Returns: PauliRegisterSequence
A sequence of Pauli register terms representing the encoded operator.
|
Compute the Jordan-Wigner encoding of a single ladder operator. For creation (Raise) and annihilation (Lower) operators, produces X and Y terms with Z-chains on all preceding qubits. The coefficients encode the ±½ and ±i/2 factors from the Majorana decomposition. Returns empty sequence for Identity or if j >= n.
ExampleEncode a†₀ in a 2-qubit register:
|