DOI: 10.21468/scipostphyslectnotes.131 ISSN: 2590-1990

How to write a simulator for quantum circuits from scratch: A tutorial

Michael J. McGuffin, Jean-Marc Robert, Kazuki Ikeda

We guide a competent programmer through the programming of a quantum circuit simulator, supporting quantum logic gates with arbitrary control qubits on 20+ qubits, assuming no previous knowledge of quantum computing. We explain qubit-wise multiplication for updating the state vector; how to compute partial traces on arbitrary subsets of qubits to find reduced density matrices; and computing qubit phase and purity. A sample implementation in JavaScript is provided, which also demonstrates how to compute von Neumann entropy, concurrence (to quantify entanglement), and magic, with source code much smaller and easier to study than other popular software packages.

More from our Archive