Table of Contents
Toffoli Gate (CCX)
Toffoli (Controlled-Controlled-X or CCX) is a three-qubit gate: flips the target qubit if both control qubits are $|1\rangle$. The quantum AND gate and is universal for reversible classical computation.
Action: $|c_1 c_2 t\rangle \to |c_1 c_2 (t \oplus c_1 c_2)\rangle$ where $c_1, c_2$ are controls and $t$ is target. Flips target only if both controls are 1.
$$\text{Toffoli} = \begin{pmatrix} 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \end{pmatrix}$$
Basis state mapping: $|abc\rangle \to |ab(c \oplus (a \wedge b))\rangle$. Swaps $|110\rangle \leftrightarrow |111\rangle$.
Properties
- Self-inverse: $\text{Toffoli}^2 = I$
- Universal: Toffoli alone is universal for reversible classical computation (can build AND, NAND, etc.)
- Quantum universal (with Hadamard): Toffoli + single-qubit gates form universal quantum gate set
- Reversible: implements reversible classical logic
Uses
- Quantum arithmetic: addition, subtraction, multiplication in quantum algorithms
- Classical simulation: Deutsch-Jozsa and related algorithms
- Reversible computing: designing reversible classical circuits
- Error correction: appears in quantum error correction codes
Decomposition
- Gate cost: ~6 CNOT gates + ~10 single-qubit gates
- Complexity: expensive operation; avoid when possible
- Note: complex multi-gate sequence (standard decomposition lengthy)
Implementation
- Superconducting qubits: via gate decomposition; ~30–50 ns for single Toffoli or longer for full decomposition
- Trapped ions: scalable decomposition via laser interactions
- Photonic: probabilistic schemes or post-selection
- Development: some platforms creating native Toffoli implementations
Dual Gate
- Fredkin (CSWAP): swaps two qubits if third is $|1\rangle$; also universal for reversible classical computation
