Entanglement: how CNOT connects qubits
Single-qubit gates rotate one Bloch vector. Only a two-qubit gate can make two qubits share a state. Here is exactly how CNOT does it, why CZ and ECR are the same thing in disguise, and what 'native gate' means on a real chip.
Step 0 · A product state
Step 1 · What CNOT does to each basis state
| Input |q1 q0⟩ | Control q0 | Output | Why |
|---|---|---|---|
| |00⟩ | 0 | |00⟩ | control is 0 → target untouched |
| |01⟩ | 1 | |11⟩ | control is 1 → target flips 0→1 |
| |10⟩ | 0 | |10⟩ | control is 0 → target untouched |
| |11⟩ | 1 | |01⟩ | control is 1 → target flips 1→0 |
On basis states CNOT is just a classical XOR: target ← target ⊕ control. It only becomes quantum when the control is in superposition, because then both rows of the table happen at once.
Step 2 · H then CNOT: the Bell state
Try it: Playground → Bell state → press › twice and watch the two Bloch arrows collapse to the centre when CNOT is applied.
Step 3 · CZ, CNOT and ECR are the same resource
Step 4 · What 'native gate' means
| Chip | Native 1-qubit | Native 2-qubit | So a CNOT costs |
|---|---|---|---|
| IBM Eagle (127q) | RZ (free), √X, X | ECR | 1 ECR + a few √X/RZ (≈ 300–500 ns, error ~0.5–1 %) |
| IBM Heron (133–156q) | RZ, √X, X | CZ (+ fractional RZZ) | 1 CZ + 2 H (as RZ·√X·RZ) (≈ 70–100 ns, error ~0.2–0.5 %) |
| Trapped ions | R(θ,φ) | RXX (Mølmer–Sørensen) | 1 RXX(π/2) + single-qubit rotations |
| Generic (QubitLab 'generic' target) | RZ, √X, X | CX | 1 CX |
The transpiler's translation stage rewrites every gate you drew into the native set. That is why Compile on fake_sherbrooke (Eagle) shows ECR gates and on fake_torino (Heron) shows CZ: same circuit, different hardware dialect. The two-qubit count after translation is the number that matters for error, because each native entangler is 10–50× noisier than a single-qubit gate.
Step 5 · Connectivity: entangling qubits that are not neighbours
A native two-qubit gate only exists between physically coupled qubits (the coupling map, heavy-hex on IBM). To entangle q0 with q5 on a chain, the router inserts SWAPs to carry the state next to its partner: three CNOTs per hop. The Levels tab shows how many SWAPs each optimization level needed; cutting (next chapter) is the alternative when the chip is simply too small.